导入导致Python-CGI崩溃(错误500)

时间:2018-03-27 13:17:14

标签: python cgi pymysql

成为script1.py:

import cgi
import cgitb

print("Content-type:text/html\r\n\r\n")
print("hello")

和script2.py:

import cgi
import cgitb
import pymysql    

print("Content-type:text/html\r\n\r\n")
print("hello")

script1.py 中,一切正常(打印'你好'),但 script2.py 会返回500错误。

考虑:

  • pymysql 已安装,证明可以从python交互式shell导入,而不会出现任何异常
  • 两个文件具有相同的权限

然后,为什么script2.py不起作用?

1 个答案:

答案 0 :(得分:0)

您可能会考虑在不同的虚拟环境中是否由Web服务器(而不是用户shell会话)运行您的脚本,可能是未安装pymysql的虚拟环境。如果是这种情况,您需要激活该虚拟环境并在那里安装pymysql。

要验证这是未安装库的实例,您可以在脚本中尝试这样的事情......

import cgi
import cgitb
import sys

print("Content-type:text/html\r\n\r\n")
print("hello")

if 'pymysql' in sys.modules:
   print 'pymysql is installed'
else:
   print 'pymysql is NOT installed'

除此之外,检查您的Web服务器日志可能会更深入地了解Web服务器引发500错误的原因......

相关问题