复杂的cgi脚本有效,但test.cgi没有

时间:2011-02-17 21:03:49

标签: cgi-bin

我在同一个cgi-bin文件夹中有两个cgi文件。一个复杂的300hundread行脚本工作正常,但是当谈到这个简单的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脚本在另一台服务器上工作,似乎无论我做什么,我都会收到“内部服务器错误”消息,而错误日志中没有任何内容。 有什么建议吗?

4 个答案:

答案 0 :(得分:2)

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

  • 您的简单脚本没有执行权限集
  • test.cgi是一个特殊名称,由服务器配置
  • 重定向到其他位置

您可以从命令行运行test.cgi吗?

答案 1 :(得分:2)

检查Web服务器日志以获取详细信息。

在大多数情况下,它的权限问题,不仅是执行此脚本的权限,而且例如默认情况下某些Web服务器出于安全原因拒绝执行带有777的脚本或任何其他可写权限。

尝试为该文件设置644权限。

答案 2 :(得分:0)

关于您的后续问题:另一台服务器是哪种服务器?此外,问题是特定脚本还是所有脚本?你可以在你的cgi-bin中使用任何脚本吗?如果没有,可能是您的虚拟主机配置不正确,或者perl安装在其他地方。

答案 3 :(得分:0)

我和托管公司谈过,他们说他们不提供任何“CGI / PERL”托管服务......

所以,问题解决了......(有点)。

课程:购买托管套餐前请务必仔细阅读:D