一个关于cgi测试的简单的小问题(50分)

  • 主题发起人 主题发起人 lhxu
  • 开始时间 开始时间
L

lhxu

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟使用 linux 6.0 apache1.3
装好后,测试 http://localhost成功
打开 httpd.conf等文件, 看了一下 ,Documentroot
和 cgi-bin 的 alias 是 /home/httpd/html
和 /home/httpd/cgi-bin
我把一个非常简单的 cgi 程序:
test.cgi:
#!/usr/bin/perl
print "Content-type:text/html/n/n";
print"成功了!"
放到 /home/httpd/cgi-bin 目录下,
然后再浏览器中 http://localhost/cgi-bin/test.cgi
出现错误:
internal server error
...
怎么回事?
我看了一下/home/httpd/cgi-bin目录的权限
为 rwx--x--x
 
补充一点:
我在命令行下 perl test.cgi
可以正常出结果
Content-type:text/html
成功了!
我的cgi程序有问题吗?print 一下 Content-type干什么用?
 
1. test.cgi有x权限吗?
2. print "Content-type:text/html/n/n"是用来告诉浏览器(客户端)
输出的内容作为什么格式的, 相当于html文件中的定义
 
IKnow问的问题很关键,有执行权限吗?
 
chmod 755 test.cgi
 
我看了一下权限:
/home/httpd/cgi-bin drwxr-xr-x
test.cgi -rwxr-xr-x
 
print "Content-type:text/plain/n/n";
print"成功了!"

print "Content-type:text/html/n/n";
print"〈html〉〈head〉〈title〉〈/title〉〈/head〉〈body〉成功了!
print"〈body》〈/html》"
 
>出现错误:
>internal server error
>...
这是test.cgi内的语句有问题,
我试了一下:
#!/usr/bin/perl
print "Content-type:text/html/n/n";
print "成功了!"
没问题。
你试./test.cgi可以正常运行吗?
如果可以应该是没问题的。
 
>print"成功了!"
应改为 print "成功了!" ;
print后有空格
 
多人接受答案了。
 
你最好还是用:
print("成功了");
这样的形式.
 
后退
顶部