【发布时间】:2012-11-19 19:10:46
【问题描述】:
我将 WSGI 3.3 用于 Python 2.7.3(32 位)用于 Apache 2.2。我从http://code.google.com/p/modwsgi/downloads/detail?name=mod_wsgi-win32-ap22py27-3.3.so 下载了wsgi,然后将其重命名并将其转移到APACHE 模块中。
我一直在尝试部署应用程序,但一直收到ImportError: no module named _socket。我已经包含了我的 wsgi 和错误日志。
我不确定我做错了什么。我想也许我可以包含一个 PythonPath 但不确定。如果需要,我可以尝试提供更多信息。提前谢谢你。
APACHE 配置:
LoadModule wsgi_module modules/mod_wsgi.so
<Directory C:/Users/xxxxd/Documents/cahd>
AllowOverride None
Options None
Order deny,allow
Allow from all
</Directory>
WSGIScriptAlias / C:/Users/xxxxd/Documents/cahd/cahd/django.wsgi
WSGI 文件:
import os, sys
sys.path.append('C:/Users/xxxxd/Documents)
sys.path.append('C:/Users/xxxxd/Documents/cahd/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'cahd.settings'
import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
错误是:
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] Traceback (most recent call last):
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] File "C:/Users/xxxxd/Documents/cahd/django.wsgi", line 10, in
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] import django.core.handlers.wsgi
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] File "C:\django\Django-1.4.1\django\core\handlers\wsgi.py", line 8, in
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] from django import http
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] File "C:\django\Django-1.4.1 \django\http\_init_.py", line 11, in
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] from urllib import urlencode, quote
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] File "C:\Python27\Lib\urllib.py", line 26, in
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] import socket
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] File "C:\Python27\Lib\socket.py", line 47, in
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] import _socket
[Mon Nov 19 09:44:17 2012] [error] [client 127.0.0.1] ImportError: No module named _socket
【问题讨论】:
-
不完全是,我的应用程序通过 runserver 工作。事实上,甚至我的 helloworld.wsgi 也是通过 apache 工作的。只是当我为自己的应用程序修改 httpd.conf 时,它会产生一个错误......
-
请编辑您的问题并将您添加的 mod_wsgi 配置添加到 Apache 配置文件中。还要指出你从哪里得到 mod_wsgi 二进制文件,以及在下载和重命名之前它的名称。
-
尝试重新安装您的 Python 并确保它已为所有用户安装。这个问题曾经出现在 Python 2.7.0(我认为)和升级 Python 帮助。也许如果您在某个时候重新安装了,但在升级时您没有为所有用户安装并且遗漏了一些东西。
标签: python django mod-wsgi apache2.2