【问题标题】:Python CGI getting 500 Internal Server ErrorPython CGI 得到 500 内部服务器错误
【发布时间】:2015-04-24 12:06:24
【问题描述】:

我正在制作第一个 python 脚本。我已经在public_html/cgi-bin 文件夹中上传了脚本,并获得了777 权限。

我收到此 500 内部服务器错误。我写了以下代码。

#!/usr/bin/python

print "Content-type: text/html\r\n"
print "<html><head><title>CGI</title></head>"
print "<body>"
print "hello cgi"
print "</body>"
print "</html>"

【问题讨论】:

  • 您在服务器日志中看到了什么错误?
  • 你能发布/usr/bin/python --version 的输出吗?如果您使用的是版本 3,则必须为 print 语句加上括号
  • @FunkySayu 我在共享主机上。如何在共享主机上获得/usr/bin/python --version 的输出?通过 cPanel ?
  • 还是不行。我试过括号打印语句。我怀疑#!/usr/bin/python 是错误的。如何检查 python 的路径? phpinfo() ?
  • 我不知道有任何托管服务提供商使用 Arch Linux 或任何其他将 Python 3 置于/usr/bin/python 的系统,所以这不太可能是问题......但统治它永远不会有坏处出来。

标签: python apache cgi


【解决方案1】:

除了cgi-bin 目录的权限之外,一切都很好。

cgi-bin的权限(chmod)从777改为755

【讨论】:

  • 我很好奇为什么它不适用于 777 权限?
  • @SohanPatel:出于安全原因,可以将某些程序配置为拒绝执行任何全局可写和/或全局可写目录中的任何内容。这可以防止有人修改或替换您的 CGI 脚本,使其通过电子邮件将您的用户密码发送到朝鲜,然后诱使您的用户运行它。大概你的 Apache 就是这样配置的。
猜你喜欢
  • 2011-10-09
  • 2016-04-24
  • 2016-12-22
  • 1970-01-01
  • 1970-01-01
  • 2013-11-13
  • 1970-01-01
  • 2014-08-05
  • 1970-01-01
相关资源
最近更新 更多