我的test.py
文件夹中有一个用于apache的文件cgi-bin
。
该文件如下所示:
#!/usr/bin/python
print("Content-type: text/html\n\n")
print("Hello world!")
然后,如果我转到www.<mywebsite>.com/cgi-bin/test.py
,该页面会成功显示Hello world!
但是,如果我将我的python脚本中的标题行更改为
#!/home/kalaracey/python2.7/bin/python
当我导航到www.<mywebsite>.com/cgi-bin/test.py
时,出现错误500内部服务器错误。有什么想法吗?
我已完成sudo chmod 755 test.py
并且可以使用两个版本的标题行仅使用./test.py
调用它。
编辑: Per @ Anony-Mousse的评论,这里是适用的Apache error_log:
[Wed Jul 11 17:33:40 2012] [error] [client <ipaddress>] (13)Permission denied: exec of '/var/www/cgi-bin/test.py' failed
[Wed Jul 11 17:33:40 2012] [error] [client <ipaddress>] Premature end of script headers: test.py
答案 0 :(得分:1)
Web服务器用户是否具有自定义python安装的访问权限?
如果无法执行/home/kalaracey/python2.7/bin/python
,则无法执行您的脚本。
让您拥有chmod -R go+rX /home/kalaracey/python2.7
和chmod go+x /home/kalaracey/python2.7/bin/python
。