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

 矮辛楚楚拉_760 发布于 2023-02-08 07:42

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

settings/
    local.py
    dev.py
    prod.py

Dev和prod是同一个repo的独立实例,这两个实例都是通过我的Webfaction帐户使用Apache提供的.对于我希望它使用的开发站点以及我希望它使用settings/dev.py的prod站点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

谢谢

1 个回答
  • 另一种方法是让每个站点在不同的mod_wsgi守护进程组中运行.将这些守护程序进程组命名为"local","dev"和"prod".

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

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

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

    2023-02-08 07:56 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有