【问题标题】:zmq not works in django + apache + mod_wsgizmq 在 django + apache + mod_wsgi 中不起作用
【发布时间】:2016-05-10 13:26:35
【问题描述】:
我在 windows 服务器中使用 mod_wsgi.so 在 apache 中部署了一个 django 项目
(python2.7 32 位、apache2.2 32 位、windows 服务器 64 位)。
我导入 zmq,它在 django 项目中运行良好。但是在apache中,整个项目崩溃了……如果我删除“import zmq”,项目可以在apache中运行。
mode_wsgi和zmq之间好像有问题。
【问题讨论】:
标签:
python
django
apache
zeromq
【解决方案1】:
我修复了这个错误。
首先我在apache的错误日志中追踪错误,发现是windows error 126,在zmq的初始化中:init.py when loading libsodium
[2016 年 5 月 5 日星期四 20:16:22] [错误] 导入 zmq
[2016 年 5 月 5 日星期四 20:16:22] [错误] 文件“D:\Program Files\python27\lib\site-packages\zmq\__init__.py”,第 42 行,在
[2016 年 5 月 5 日星期四 20:16:22] [错误] _libsodium = ctypes.cdll.LoadLibrary(bundled_sodium[0])
[2016 年 5 月 5 日星期四 20:16:22] [错误] LoadLibrary 中的文件“D:\Program Files\python27\Lib\ctypes\__init__.py”,第 443 行
[Thu May 05 20:16:22 2016] [error] return self._dlltype(name)
[2016 年 5 月 5 日星期四 20:16:22] [错误] init 中的文件“D:\Program Files\python27\Lib\ctypes\__init__.py”,第 365 行
[2016 年 5 月 5 日星期四 20:16:22] [错误] self._handle = _dlopen(self._name, mode)
[2016 年 5 月 5 日星期四 20:16:22] [错误] WindowsError: [错误 126]
所以我加了
from . import libsodium, libzmq
到init.py,效果很好