Python simple.cgi的内部服务器错误,怎么了?

Python simple.cgi的内部服务器错误,怎么了?,python,cgi,Python,Cgi,我从事互联网编程,我们正在做.cgi,但就我个人而言,我根本无法运行我的.cgi脚本,我知道其他人让它工作,但我的脚本就是拒绝运行。有什么建议吗 #!/usr/bin/env python print "Content-type: text/html" print print "<html><head><title>CGI</title></head>" print "<body>" print "hello cgi" p

我从事互联网编程,我们正在做.cgi,但就我个人而言,我根本无法运行我的.cgi脚本,我知道其他人让它工作,但我的脚本就是拒绝运行。有什么建议吗

#!/usr/bin/env python

print "Content-type: text/html"
print
print "<html><head><title>CGI</title></head>"
print "<body>"
print "hello cgi"
print "</body>"
print "</html>"
#/usr/bin/env python
打印“内容类型:文本/html”
打印
打印“CGI”
打印“”
打印“hello cgi”
打印“”
打印“”

我多次使用chmod 755文件,我尝试使用
#/usr/bin/python
#!usr/local/bin/python
。我试着把它放在一个名为cgi-bin的文件夹中,并确保它是用unix行结尾保存的,但我得到的只是内部服务器错误。我知道我让它在课堂上工作,但现在它拒绝运行,有人帮我吗?谢谢

Wild guess:您使用的是Python 3,因此您的打印语句必须是打印函数调用:

print("Content-type: text/html")
etc...

好的,这是一个非常简单的修复,我完全错过了。首先,Ned Batchelder正确地指出,我的代码是python 2(这很奇怪,因为我使用python 3),但问题是,print(“内容类型:text/html”)后面的print语句。第二个print语句必须是print(“”),而不仅仅是print()。所以我觉得有点愚蠢,但这解决了我的问题,希望这能帮助其他人

唯一可以确定的方法是查看服务器日志。它们在不同的操作系统上位于不同的位置,所以我无法告诉您在哪里查找。找到日志,你会发现一条错误消息,解释返回500的确切原因。我在Ubuntu上,服务器在CentOS上运行apache,这有帮助吗?在CentOS服务器上检查apache日志。它们应该位于:/var/log/httpd/error\u logGood catch,但我更改了它,没有任何区别