嗨,因为关于这个话题的其他帖子对我没有多大帮助(它们似乎都不适用于我运行的Ubuntu版本Ubuntu 13.10),我决定再发一篇。运行这些线路后(一位stackoverflow成员建议运行这些线路)。。
cd /etc/apache2/mods-enabled
sudo ln -s ../mods-available/cgi.load .
sudo ln -s ../mods-available/cgid.load .
sudo service apache2 restart
我将cgi文件(它们是perl文件)放在Apache2的cgi-bin@/usr/lib/cgi-bin中。键入localhost/cgi-bin/test时。cgi,我收到一个500内部服务器错误。这是服务器错误日志所说的。。
[Fri 2013年11月22日21:23:29.045785][CGI:error][PID 9559][客户端127 . 0 . 0 . 1:47663]ah 01215:(8)Exec格式错误:“/usr/lib/cgi-bin/test.cgi”的Exec失败[Fri 2013年11月22日21:23:29.046720][CGI:error][PID 9559][客户端127
test.cgi看起来像这样…
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print <<HTML;
<html>
<head>
<title>A Simple Perl CGI</title>
</head>
<body>
<h1>A Simple Perl CGI</h1>
<p>Hello World</p>
</body>
HTML
exit;
有人知道当这种情况发生时该怎么办或者有什么建议吗?谢谢
编辑::很奇怪,我得到了这个cgi文件,我调用test2.cgi来运行。
#!/usr/bin/perl
use strict;
use warnings;
sub main {
print "Content-type: text/html\n\n";
print "Hello world\n\n";
print "What's your favorite food brah?\n";
}
main();
但是我需要处理的更大、更高级的 cgi 文件将无法运行。这些包括用html标签打印出来的东西。
编辑:忽略代码中任何奇怪的空格。我就是这样把它复制到帖子里的。
编辑:不太清楚原始代码中每行开头是否有多余的空格导致这个问题,如果没有,忽略其余部分!谢谢阿蒙
如果您尝试从控制台运行它们,它将有助于立即看到任何错误。既然这样...
Can't find string terminator "HTML" anywhere before EOF
#!/usr/bin/perl # make sure no space before # and this comment is not here
print "Content-type: text/html\n\n";
print <<HTML;
<html>
....
</body>
HTML
exit; # Make sure the HTML line before this has nothing either side of it
基本上,在#/Amon指出的usr/bin/perl行是否存在,结束的HTML行也应该修复它(不应该有任何围绕heredoc终止符的东西,这并不明显,每行开头都有空格,但有)。
有时当把示例代码放在一个站点上时,可能会引入空格等来帮助可视化。我猜这里引入了一些被复制到代码中的。很难发现!
请看下面的服务器日志摘录--我曾试图上传到谷歌,但失败了(500:内部服务器错误),然而,在查询谷歌驱动器盒上的相同文件,以前未能上传,谷歌返回该文件的元数据,从而确认该文件确实上传成功。 这似乎与Google的最佳实践相矛盾,后者建议在这种失败情况下重试--另一方面,重试将导致Google Drive中出现多个重复的文档。
问题内容: 我正在尝试为这个工作中的项目学习AJAX。我有一个网站加载病人正在服用的药物。 我递归调用此AJAX函数,以便它将附加一个包含单种药物和7天历史记录的新表。我在使代码在FF和IE中执行时遇到问题。在chrome中效果很好。我有显示xmlhttp.status的警报,这是我得到的: xmlhttp.status == 500(内部服务器错误)。 我注释掉了所有递归,因此将其范围缩小到了这
我收到以下错误 内部服务器错误 服务器遇到内部错误或配置错误,无法完成您的请求。 请联系服务器管理员,webmaster@strivemedicare.in并告知他们错误发生的时间,以及可能导致错误的任何行为。 有关此错误的详细信息,请参阅服务器错误日志。 此外,尝试使用错误文档处理请求时遇到 500 内部服务器错误错误。
问题内容: 当使用Java的Youtube API示例将文件上传到youtube时,我得到以下信息: 在此行出现错误: 视频返回视频= videoInsert.execute(); 错误堆栈 这里已经引发了一个相关的问题: https : //code.google.com/p/gdata- issues/issues/detail?id=6352 问题答案: 一两天后自动解决!绝对是API问题。
我一直试图在nginx上安装CakePHP,但我遇到了一个死胡同。尝试访问web根目录时,我收到一个500内部服务器错误。我在我的错误中得到了这个错误。日志: PHP消息:PHP致命错误:require():无法打开required'/var/www/html/test/vendor/autoload。php'(include_path='。:/usr/share/php:/usr/share/p
我想用ajax向laravel中的控制器发送post请求。ajax请求发送两个输入参数,我希望controller在数据库中找到包含第一个参数的列,然后使用第二个输入参数设置name属性。但是我在控制台500中有这个错误消息(内部服务器错误)。 Ajax功能: 路线: 控制器功能: 而且我导入csrf无处不在,因为上次当我做AJAX调用我有这个csrf的问题,下面的代码已经修复了我的问题,但现在不