Назад | Перейти на главную страницу

Разные версии Django на одном рабочем сервере, как мне настроить?

Результат должен выглядеть так.

  1. http://www.example.com/djangoapp1 django версии 0.96
  2. http://www.example.com/djangoapp2 django версии 1.0.2

Используя сервер Apache, с mod_python. Или любой серверной технологии, которую рекомендуют больше всего.

Спасибо.

Я не уверен, что можно сделать это правильно с помощью mod_python. Раньше я видел массу утечек между потоками / процессами, когда пробовал это с помощью mod_python. Теперь это может работать лучше, используя virtualenv но это того не стоит.

Перейти к mod_wsgi вместо этого для лучшей производительности, лучшей поддержки, лучшего использования памяти и меньшего количества ошибок ... затем следуйте странице вики на Виртуальные среды для запуска нескольких версий Django.

Технически это должно быть возможно сделать с помощью mod_python. Если у людей действительно есть проблемы, как было предложено другими, это, вероятно, потому, что они не установили, как mod_python правильно использует интерпретаторы. Даже если вспомогательные интерпретаторы настроены правильно, так что каждый экземпляр Django является собственным, у вас могут возникнуть проблемы с настройками часового пояса, языка и локали, поскольку они управляются с помощью переменных среды, которые являются глобальными для процесса, а не локальными для вспомогательного интерпретатора. Однако это не имеет ничего общего с используемыми разными версиями Django и может произойти в любом случае, когда в процессе Apache запущено несколько приложений. Те же проблемы возникают и с mod_wsgi во встроенном режиме. Самый безопасный подход - использовать режим демона mod_wsgi. Таким образом, каждый экземпляр Django находится в своем собственном процессе и не может мешать друг другу.