2010-01-27 75 views
0

我使用--no-site-packages在virtualenv中創建了一個新的環境並執行激活文件。那麼,我現在的Django應用程序不應該顯示任何錯誤? Environement沒有安裝Django。我想,我的網站正在使用Django的舊python。我該如何改變它?
也許是因爲我的.htaccess文件,那就是:Virtualenv問題

SetHandler mod_python 
PythonPath "['/home/usr/PythonEnvs/Django/bin/python', 'home/usr/apps'] + sys.path" 
PythonOption mod_python.importer.path "['/home/usr/PythonEnvs/Django/bin/python']+ sys.path" 
PythonHandler django.core.handlers.modpython 
PythonDebug On 

SetEnv DJANGO_SETTINGS_MODULE application.settings 

SetEnv PYTHON_EGG_CACHE /tmp/egg-cache 

還有什麼應該怎麼做來用我的environement?

回答

4

使用mod_wsgi,您可以將WSGIPythonHome設置爲virtualenv所在的位置。 (不過,mod_python並不能讓你輕鬆設置解釋器)(可能有一種方法需要在apache啓動時設置PYTHONEXECUTABLE)。

看看有什麼bin/pythonbin/activate旁邊)做到sys.path,並模仿PythonPath指令。編寫一個顯示當前sys.path的頁面,並確保系統python路徑不會出現;如果是這樣,請用PythonPath進一步編輯。

+3

+1。 OP(和其他人)無論如何都應該使用mod_wsgi。 – 2010-01-27 16:12:36

+0

對於mod_wsgi,請參閱'http://code.google.com/p/modwsgi/wiki/VirtualEnvironments'。 – 2010-01-28 03:30:11