【问题标题】:django serving: wsgi.py? 'cannot be loaded as Python module'django 服务:wsgi.py? '不能作为 Python 模块加载'
【发布时间】:2013-01-25 16:13:14
【问题描述】:

尝试为 django 管理站点提供服务无济于事。请求时发生 500 内部服务器错误。该错误声称 wsgi.py 无法作为 Python 模块加载。下面查看内部服务器错误和相关文件。

可能相关:起初尝试使用本地构建的 python。另一个系统管理员尝试了 python 的这个 loca 构建,但它不会执行。此本地构建仅适用于我的用户。我说这可能是相关的,但也尝试过系统 python。

请求站点时出现 500 内部服务器错误。这是服务器错误日志:

[error] [client 208.120.168.168] mod_wsgi (pid=20239): Target WSGI script '/home/andrew/public_html/7DigAdmin/wsgi.py' cannot be loaded as Python module.
[error] [client 208.120.168.168] mod_wsgi (pid=20239): Exception occurred processing WSGI script '/home/andrew/public_html/7DigAdmin/wsgi.py'.
[error] Traceback (most recent call last):
[error] File "/home/andrew/public_html/7DigAdmin/wsgi.py", line 5, in ?
[error] import os
[error] ImportError: No module named os

wsgi.py:

import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "/home/andrew/SCTN_7DigAdmin/SCTN_7DigAdmin/SCTN_7DigAdmin.settings")

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

wsgi.conf:

LoadModule wsgi_module modules/mod_wsgi.so

WSGIPythonHome /usr/local/bin/python2.7

httpd.conf:

WSGIScriptAlias /7dadmin /home/andrew/public_html/7DigAdmin/wsgi.py
  <Directory /home/andrew/public_html/7DigAdmin>
     Order allow,deny
     Allow from all
  </Directory>

【问题讨论】:

    标签: python django


    【解决方案1】:

    我想错误是因为您将 WSGIPythonHome 设置为 Python bin 目录。正如the mod_wsgi documentation 解释的那样,它应该指向库目录。您的错误是因为正常的库文件,例如 os 模块,不在该 bin 目录中。

    但是,该指令仅应在库文件位于意外位置的情况下使用,而您似乎并非如此。您应该完全删除该指令。

    【讨论】:

    • 删除该指令并没有解决问题。产生同样的错误。
    【解决方案2】:

    我有一个类似的问题,对我来说这解决了它:

    chmod a+x wsgi.py
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-01
      • 1970-01-01
      • 2017-08-18
      • 1970-01-01
      • 1970-01-01
      • 2020-10-31
      • 2016-10-25
      • 2017-10-13
      相关资源
      最近更新 更多