2010-01-27 3 views
0

Я создал новое environement в virtualenv с --no-site-пакетами и выполнил активированный файл. Итак, должно ли мое текущее приложение Django показывать какую-либо ошибку? В Environement не установлен Django. Я думаю, мой сайт использует мой старый питон с Django. Как я могу его изменить?
Может быть, это потому, что мой файл .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 не позволяет вам легко установить интерпретатор (может быть, существует способ установки PYTHONEXECUTABLE при запуске apache).

Посмотрите, что bin/python (рядом с bin/activate) делает для sys.path, и подражать его в PythonPath директиве. Напишите страницу, на которой отображается текущий sys.path, и убедитесь, что системный путь python не отображается; если это так, отредактируйте его с помощью PythonPath.

+3

+1. OP (и все остальные) должны использовать mod_wsgi в любом случае. –

+0

Для mod_wsgi см. 'Http://code.google.com/p/modwsgi/wiki/VirtualEnvironments'. –

Смежные вопросы