我正试图通过mod_python部署一个django项目,我一直收到一个错误,说缺少一个处理程序模块。
我的apache配置:
<Location />
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE bookmarklet_server.settings
PythonOption django.root /
PythonDebug On
#PythonPath "['', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/usr/lib/python2.6/lib-old', '/usr/lib/python2.6/lib-dynload', '/usr/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/usr/lib/pymodules/python2.6', '/usr/lib/pymodules/python2.6/gtk-2.0', '/usr/local/lib/python2.6/dist-packages']"
</Location>另一条路径是我试图复制默认的pythonpath,但没有帮助。
python控制台中的快速测试表明,该模块应该是可访问的:
information.
import 2.6.4 (r 264:75706,2009年11月2日,14:44:17) GCC 4.4.1关于linux2类型“帮助”、“版权”、“信用”或“许可”以获取更多的linux2 django.core.handlers.modpython
无errors
无论如何加载站点,都会无意中返回此错误:
MOD_PYTHON ERROR
ProcessId: 8926
Interpreter: '<ip>'
ServerName: '<ip>'
DocumentRoot: '/htdocs'
URI: '/'
Location: '/'
Directory: None
Filename: '/htdocs'
PathInfo: '/'
Phase: 'PythonHandler'
Handler: 'django.core.handlers.modpython'
Traceback (most recent call last):
File "/usr/lib/python2.6/dist-packages/mod_python/importer.py", line 1537, in HandlerDispatch
default=default_handler, arg=req, silent=hlist.silent)
File "/usr/lib/python2.6/dist-packages/mod_python/importer.py", line 1202, in _process_target
module = import_module(module_name, path=path)
File "/usr/lib/python2.6/dist-packages/mod_python/importer.py", line 304, in import_module
return __import__(module_name, {}, {}, ['*'])
ImportError: No module named django.core.handlers.modpython发布于 2009-12-12 13:25:40
好的,解决了这个问题。
这个特殊的导入问题是通过安装django来解决的,而不仅仅是将svn主干链接到dist-包中。为什么这不适用于服务器进程,我不知道。
但是无论如何,还有更多的问题是通过nginx进行CGI部署来解决的,最后一个问题(也失败了我的/home部署尝试)是,我的dir,也就是文件所在的位置,只能由我自己访问。
我今天学到了很多:)
发布于 2009-12-12 12:32:41
也许django不在你的勾当里?
https://stackoverflow.com/questions/1893017
复制相似问题