简体   繁体   English

zmq在Django + Apache + mod_wsgi中不起作用

[英]zmq not works in django + apache + mod_wsgi

I have deployed a django project in apache with mod_wsgi.so in windows server ( python2.7 32-bit, apache2.2 32-bit, windows server 64-bit ). 我已经在Windows Server(python2.7 32位,apache2.2 32位,Windows Server 64位)中的mod_wsgi.so中在apache中部署了一个django项目。 I import zmq, and it works well in django project. 我导入了zmq,并且在django项目中效果很好。 But within apache, the whole project crash... If I delete "import zmq", the project can work in apache. 但是在apache中,整个项目会崩溃...如果删除“ import zmq”,则该项目可以在apache中工作。 It seems that there is something wrong between mode_wsgi and zmq. 似乎mode_wsgi和zmq之间有问题。

I fixed this bug. 我修复了这个错误。 Firstly I traced the error in apache's error log, and found that it was windows error 126 and in zmq's initialization: init .py when loading libsodium 首先,我在apache的错误日志中跟踪了该错误,发现它是Windows错误126和zmq的初始化:加载libsodium时为init .py

[Thu May 05 20:16:22 2016] [error] import zmq [Thu May 05 20:16:22 2016] [error] File "D:\\Program Files\\python27\\lib\\site-packages\\zmq\\__init__.py", line 42, in [Thu May 05 20:16:22 2016] [error] _libsodium = ctypes.cdll.LoadLibrary(bundled_sodium[0]) [Thu May 05 20:16:22 2016] [error] File "D:\\Program Files\\python27\\Lib\\ctypes\\__init__.py", line 443, in LoadLibrary [Thu May 05 20:16:22 2016] [error] return self._dlltype(name) [Thu May 05 20:16:22 2016] [error] File "D:\\Program Files\\python27\\Lib\\ctypes\\__init__.py", line 365, in init [Thu May 05 20:16:22 2016] [error] self._handle = _dlopen(self._name, mode) [Thu May 05 20:16:22 2016] [error] WindowsError: [Error 126] [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] [错误]文件“ D:\\ Program Files \\ python27 \\ Lib \\ ctypes \\ __ init__.py“,行443,在LoadLibrary中[2016年5月5日星期四20:16:22] [错误]返回self._dlltype(name)[5月05日星期四20:16 :22 2016] [错误]文件“ D:\\ Program Files \\ python27 \\ Lib \\ ctypes \\ __ init__.py”,第365行, 初始化 [2016年5月5日20:16:22] [错误] self._handle = _dlopen (self._name,模式)[2016年5月5日星期四20:16:22] [错误] WindowsError:[错误126]

so I add 所以我加

 from . import libsodium, libzmq 

to init .py, and it works well 初始化 .py,它很好用

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM