应该在哪里设置DJANGO_SETTINGS_MODULE
环境变量?
多个可能的位置:
在配置文件(.ebextensions
)中,如下所示:
option_settings:aws:elasticbeanstalk:application:environment: DJANGO_SETTINGS_MODULE:" app.settings"
在加载应用程序之前的wsgi.py
文件中
manage.py
(我也在网上的不同Django项目中看到这个)如果我未在wsgi.py
中指定,则看起来根本无法找到它。因此,我想知道.ebextensions
中设置的环境变量是否在加载wsgi.py
之前设置。
有什么想法吗?
答案 0 :(得分:0)
在wsgi.py
.ebextensions
django_aws_eb.config:
option_settings:
aws:elasticbeanstalk:container:python:
WSGIPath: "my_site/wsgi.py"
在你的`wsgi.py'文件中指定你的DJANGO_SETTING_MODULE
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_site.settings")
application = get_wsgi_application()
aws beanstalk首先在.ebextension中查找配置,然后找到wsgi.py然后找到设置。
更多信息:Configure Your Django Application for Elastic Beanstalk