python 项目如何通过指定配置文件来区分正式/测试环境

工程目录结构:

一、django方式启动 区分正式测试环境

启动项目的命令是 python manage.py runserver 0.0.0.0:8000,可以看出,是通过启动manage.py来启动整个项目的,而这里运行配置文件是通过获取系统环境变量  DJANGO_SETTINGS_MODULE 的值来指定的,

所以只需要在环境变量中配一下或者在这里写死就可以轻松指定运行哪个配置文件,部署到linux上的时候也可以通过配置环境变量/etc/profile或者启动shell里配置临时环境变量export来指定

os.environ.setdefault(key,value)    #如果环境变量中没有该值,则默认设置为value,如果有,则保持原值

os.getenv('DJANGO_SETTINGS_MODULE') #获取环境中的value值

二、uwsgi+nginx方式启动 区分正式测试环境 

启动项目的命令是 uwsgi --ini /etc/uwsgi8080.ini  ,可以看出,是通过启动wsgi.py来启动整个项目的,而这里运行配置文件是通过获取系统环境变量  DJANGO_SETTINGS_MODULE 的值来指定的,但是在liux中配置环境变量这里却读不到;

原来需要在uwsgi启动文件中指定才可以

因此,只需要在正式环境下修改此配置文件的env属性即可区分python运行的正式/测试环境

扫描二维码关注公众号,回复: 5320826 查看本文章

setttins-test.py配置测试环境

获取setttins-test.py中的属性

猜你喜欢

转载自blog.csdn.net/qq_31024823/article/details/87914446