gpt4 book ai didi

Django - 根据服务器从 wsgi 引用不同的设置文件

转载 作者:行者123 更新时间:2023-12-04 14:28:43 24 4
gpt4 key购买 nike

我很惊讶我找不到与此相关的现有问题。也许我忽略了一个明显的答案。但是,假设我有一个名为“foo”的 django 项目。按照 Two Scoops 的鼓励,foo 的设置在多个文件中定义。书。

settings/
local.py
dev.py
prod.py

Dev 和 prod 是同一个 repo 的独立实例,它们都通过我的 Webfaction 帐户使用 Apache 提供服务。对于开发站点,我希望它使用 settings/dev.py对于生产站点,我希望它使用 settings/prod.py .我的 wsgi.py 文件包含以下行:
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "foo.settings.prod")

这是我感到困惑的地方。如何使用 foo.settings.dev 加载开发站点反而?

我可以用多个文件替换 wsgi.py,然后在我的每个 httpd.conf 文件中将 WSGIScriptAlias 分配给正确的 wsgi 文件吗?
wsgi/
dev.py
prod.py

谢谢

最佳答案

另一种方法是让每个站点在不同的 mod_wsgi 守护进程组中运行。将这些守护进程组命名为“local”、“dev”和“prod”。

在您的 WSGI 脚本文件中,您可以使用:

import mod_wsgi
os.environ['DJANGO_SETTINGS_MODULE'] = 'foo.settings.%s' % mod_wsgi.process_group

换句话说,使用 mod_wsgi 守护进程组的名称来动态选择配置。

关于Django - 根据服务器从 wsgi 引用不同的设置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20789391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com