Я хочу обслуживать специализированные RSS-каналы на другом поддомене, чем остальная часть сайта.
Можно ли использовать каркас сайтов для использования другого файла urls.py и settings.py в одном экземпляре django . или мне нужно установить два расположения apache и просто установить разные файлы settings.py в apache conf.
Причина, по которой мне нужно настроить два файла urls.py, состоит в том, чтобы избежать дублирования содержимого. Я не хочу, чтобы основной сайт был доступен по адресу rss.example.com, и я не хочу, чтобы специализированные каналы были доступны на example.com
Было бы идеально обслуживать их из одного экземпляра django, поскольку мы работаем на виртуальном хостинге с ограниченной памятью, и, кажется, такая трата открывать экземпляр, который обслуживает только rss.
edit : Я пришел к выводу, что несколько экземпляров с отдельными файлами urls.py будут проще для меня ... но я нашел эту статью, описывающую, как это сделать, используя один экземпляр:
http://effbot.org/zone/django-multihost.htm
В итоге я написал фреймворк для запуска нескольких копий сайта на одном экземпляре django.
Основная идея заключается в том, чтобы на лету менять настройки SITE_ID
для каждого запроса и загружать альтернативные настройки из базы данных. Он делает это на основе домена и по умолчанию использует SITE_ID = 1
(когда ничего не может найти)
Все настройки в файле settings.py действуют как значения по умолчанию, которые переопределяются настройками, хранящимися в базе данных для текущего сайта.
Работает довольно хорошо :) и работает в режиме производства http://rootbuzz.com