Рассмотрим приложение Django, созданное для обслуживания нескольких сайтов со слегка отличающимся контентом, используя стандартную среду Django sites
.
Традиционный способ разместить это - настроить несколько объектов Site
и настроить приложение.в нескольких проектах Django каждый проект указывает на разные SITE_ID
в соответствующих settings.py
: s.
. По разным причинам я бы хотел избежать создания нового проекта для каждого нового сайта.Я хочу иметь возможность настроить один проект и заставить Джанго выяснить, какой Site
объект использовать, основываясь на имени хоста, указанном во входящем HTTP-запросе.
Каков рекомендуемый способ достижения этой функциональности?
Разъяснение : я хочу, чтобы инфраструктура сайта игнорировала settings.SITE_ID
(жестко заданный в settings.py
) и вместо этого динамически извлекала объекты сайта на основе содержимого заголовка Host
.Почему это требование?Я буду добавлять и удалять сайты несколько раз в час, и общее количество сайтов будет превышать 10 000, поэтому настройка проекта Django для каждого сайта не является вариантом.Это проблема, которая разрешима в Django?Если да, то как лучше всего этого добиться?