我正在尝试在apache mod-wsgi上部署一个用于生产的django应用程序.我有一个名为freecad的第三方python应用程序,它将python模块打包在FreeCAD.so库文件中.请求挂起’import FreeCAD’.一些apache日志错误告诉我,它可能是zlib的问题?尝试导入此模块时压缩.
请注意,使用django的runserver时一切正常.
在进一步研究之后,这不是压缩问题,也不是许可.
我做了www-data用户使用
$sudo -u www-data python
Python 2.6.6 (r266:84292, Sep 15 2010, 16:22:56)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path.append('/usr/lib/freecad/lib')
>>> import FreeCAD
FreeCAD 0.10, Libs: 0.10R3225
>>>
但它仍然依赖于网页请求中的“导入FreeCAD”
解决方法:
组:
WSGIApplicationGroup %{GLOBAL}
请参阅mod_wsgi wiki上的应用程序问题文档.
很可能你有一个不适合在子解释器中工作的扩展模块.以上强制它在主翻译中运行.