2011-02-17 40 views
0

我有相同的cgi-bin文件夹2个CGI文件。一个复杂的300hundread行脚本工作正常,但是当涉及到这个简单的CGI脚本:复杂的CGI脚本工作,但test.cgi不

#!/usr/bin/perl -w 
print "Content-type: text/html\n\n"; 
print "<html><head>"; 
print "<title>CGI Test</title>"; 
print "</head>"; 
print "<body><h1>I just wrote a web page using Perl!</h1>"; 
print "</body></html>"; 

网页将返回500内部服务器错误...

为什么:(

编辑: 好吧,问题在一台服务器上解决,cgi工作正常。但...
现在我试图使cgi脚本在另一台服务器上工作,似乎无论我我是否继续收到“内部服务器错误”消息并没有在错误日志中。 有什么建议吗?

回答

0

我接触过的托管公司,他们说,他们不提供任何“CGI/PERL” sript托管...

所以,问题就解决了......(种)。

教训:永远买主机包前,请仔细阅读:d

2

两种可能性浮现在脑海中:

  • 您简单的脚本没有执行权限设置
  • test.cgi是由服务器配置

可以运行重定向到其他地方一个特殊的名字test.cgi从命令行?

2

检查细节的Web服务器日志。

在大多数情况下它是一个权限问题,不仅权限执行这个脚本,但例如一些网站的服务器在默认情况下拒绝与出于安全原因,777个或任何其他可写权限来执行脚本。

尝试设置644个权限,该文件。

+0

已成立0644权限,似乎工作,它需要是“0755”。 :d – Cristy 2011-02-19 15:17:00

0

关于你提到的后续问题:什么样的服务器是另一个服务器?另外,问题是特定的脚本还是所有脚本?你可以在你的cgi-bin中使用任何脚本吗?如果没有,也许你的虚拟主机配置不正确,或者perl安装在别的地方。

+0

无脚本工作的cgi-bin目录里面,我检查到perl的路径和它的USR /斌/ perl的。我想我必须与主办方的支持交谈。 – Cristy 2011-02-21 13:15:43