我正在使用 django 做一些介绍性的工作,到目前为止这看起来真的很容易(而且很有趣),但是我一直在使用我安装在 /opt/local(RedHat 5.3)中的 Python 2.6 来完成所有这些工作,因为 redhat 附带的 python 是 2.4 . 我设置了一个符号链接:
/usr/bin/python2.6 -> /opt/local/bin/python
到目前为止,我一直将它用于所有 django 的东西;IE
> python2.6 manage.py runserver
但是,当我尝试进入生产模式时,mod_python 没有使用正确版本的 python:
Mod_python error: "PythonHandler django.core.handlers.modpython"
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/mod_python/apache.py", line 287, in HandlerDispatch
log=debug)
File "/usr/lib/python2.4/site-packages/mod_python/apache.py", line 461, in import_module
f, p, d = imp.find_module(parts[i], path)
ImportError: No module named django
我的 /etc/httpd/conf/httpd.conf 中有这个:
<Location "/chat">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE chat.settings
PythonDebug On
PythonPath "['/www/django/chat', '/opt/local/lib/python2.6/site-packages/django/'] + sys.path"
</Location>
所以我的问题是,如何让 mod_python 寻找 python2.6 而不是 python?