sites
考虑一个 Django 应用程序,它使用标准 Django框架为多个站点提供服务,内容略有不同。
托管它的传统方法是配置多个对象并在多个 Django 项目中设置应用程序,每个项目在各自的:s中Site
指向不同的项目。SITE_ID
settings.py
由于各种原因,我想避免为每个新站点创建一个新项目。我希望能够设置一个项目并让 DjangoSite
根据传入的 HTTP 请求中引用的主机名确定要使用哪个对象。
实现此功能的推荐方法是什么?
澄清:我希望站点框架忽略settings.SITE_ID
(在 中硬编码settings.py
),而是根据Host
标头中的内容动态获取站点对象。为什么有这个要求?我将每小时多次添加和删除站点,站点总数将超过 10,000 个,因此不能为每个站点设置一个 Django 项目。这是一个可以在 Django 中解决的问题吗?如果是这样,实现它的最佳方法是什么?