Размещение нескольких экземпляров VirtualHost - PullRequest
0 голосов
/ 02 февраля 2012

Мой проект django состоит из множества приложений, библиотек и промежуточного программного обеспечения. Я хотел бы запустить разные конфигурации этого проекта на разных виртуальных хостах (из-за разных вариантов использования и потребностей, например: один для пользователей, один для M2M API и т. Д.). Из этого вопроса я понимаю, что размещение этого не должно быть проблемой, если у меня есть отдельные файлы начальной загрузки wsgi, но я не понимаю, почему следующая строка:

os.environ['DJANGO_SETTINGS_MODULE'] = 'site1.settings'

не вызывает ошибку при одновременном развертывании. Если у меня есть несколько виртуальных хостов со своими собственными конфигурационными файлами wsgi, все из которых настраивают системную переменную DJANGO_SETTINGS_MODULE, они не перезаписывают настройки друг друга?

Изменяется ли этот параметр "точно в срок" при каждом запросе? В таком случае, существует ли более эффективный способ обработки такой установки с несколькими хостами?

Спасибо

1 Ответ

1 голос
/ 02 февраля 2012

Все django-установки имеют собственную область видимости python. Это означает, что переменные site1 недоступны на site2. Это так же, как две оболочки Python. Вы не можете получить доступ к окружению.

Итак, у вас есть два запущенных экземпляра вашего проекта. Один для сайта1 и один для сайта2.

Я также управляю своими установками таким образом, но я могу себе представить, что было бы лучше использовать только одну установку и предлагать такие вещи, как apis на подстранице. Но я не знаю, значительно ли это лучше для производительности.

...