у меня есть два веб-приложения. Один был разработан с использованием Django 1.0, а другой - с использованием Django 1.4. Как я могу запустить оба приложения на одном сервере apache2, используя две версии django? Кто-то сказал мне что-то о virtualenv ... Я использую mod_wsgi.
Спасибо
Вам обязательно стоит использовать virtualenv.
Вот как вы можете проверить, установлен ли у вас virtualenv:
$ virtualenv --version
Если у вас не установлен virtualenv, вы можете установить его следующим образом:
$ pip install virtualenv
Если это дает вам ошибку, у вас, вероятно, еще нет pip. Вы можете установить его, используя:
$ easy_install pip
После установки virtualenv вы можете создавать отдельные виртуальные среды Python, по одной для каждой установки Django, например:
$ virtualenv env
Я рекомендую запускать эту команду в папке проекта каждого приложения. Если вы это сделаете, вы получите папку с именем env, которая будет содержать виртуальную среду Python. Каждый раз, когда вы хотите начать работу с виртуальной средой, вы можете использовать эту команду:
$ source env/bin/activate
Ваше приглашение должно указывать на то, что вы запускаете среду, выглядя примерно так:
(env)$
Вы можете выйти из virtualenv, набрав:
(env)$ deactivate
Если вы зашли так далеко, вы можете начать установку версий пакетов Python для конкретной среды, как это (в активированной среде):
(env)$ pip install Django==1.0
Это установит Django версии 1.0 внутри текущей виртуальной среды. Вы можете увидеть, сработало ли это, выполнив:
(env)$ pip freeze
В результате должно получиться что-то вроде:
Django==1.0-final
wsgiref==0.1.2
Теперь вы можете деактивировать эту среду, активировать другую среду и установить Django 1.4 следующим образом:
(env)$ pip install Django==1.4
Надеюсь это поможет!
Вы читали любую доступную документацию, в том числе:
http://code.google.com/p/modwsgi/wiki/VirtualEnvironments http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide#Delegation_To_Daemon_Process http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango