2

我在 apache2 的 cgi-bin 中放了一个简单的 python 脚本,并尝试使用浏览器执行它,如下所示,

“http://www.example.com/cgi-bin/test.py”

但它给出了 500 内部服务器错误。

以下是apache2中的error.log。

[Sun Jul 29 22:07:51 2012] [error] (8)Exec 格式错误:'/usr/lib/cgi-bin/test.py' 的执行失败 [Sun Jul 29 22:07:51 2012] [错误] [客户端 ::1] 脚本头过早结束:test.py [Sun Jul 29 22:07:51 2012] [错误] [客户端 ::1] 文件不存在:/var/www/favicon.ico

谁可以帮我这个事?

4

2 回答 2

1

看起来您没有正确发送标头。

试试这个最简单的示例脚本是否运行:

print('Content-Type: text/html; charset=utf-8\n')
print("Hello, World!")
于 2012-07-29T17:06:38.493 回答
1

BlaXpirit 的答案应该可以解决您的 500 服务器内部错误问题。

重要的是要注意第一个打印语句末尾的“\n”。你也可以写成

print("内容类型: text/html; charset=utf-8")

打印()

我很惊讶地发现,即使你的 Python 程序只做服务器端工作——根本不响应浏览器,写出这些头文件也是必要的。

于 2013-01-10T22:57:32.257 回答