【问题标题】:The SECRET_KEY setting must not be empty [duplicate]SECRET_KEY 设置不能为空 [重复]
【发布时间】:2014-07-07 03:16:49
【问题描述】:

我的设置文件夹中有三个文件:

  • base.py
  • development.py
  • 生产.py

我已将此行放入我的 wsgi.py 文件中:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproj.settings.development")

但是当我运行 gunicorn myproj.wsgi:application 并尝试在浏览器中加载应用程序时,我得到:

ImproperlyConfigured: The SECRET_KEY setting must not be empty.

我在base.pydevelopment.py 中肯定有SECRET_KEY 我有这行:

from base import *

我已经更新了manage.py 并在那里指定了新的设置文件,只是为了测试runserver 是否可以正常工作。

更新: 现在我已将SECRET_KEY 放入development.py。当我运行gunicorn myproj.wsgi:application --settings 'myproj.settings.development' 时,错误仍然存​​在。

【问题讨论】:

  • settings.py 中不需要 SECRET_KEY
  • 我知道有更好的方法来存储它,但现在我想把它存储在那里。然后我想将它存储为环境变量或其他东西会更好。
  • 也试试把它放到 manage.py 中。
  • 你的意思是密钥?我试过 import settings.development from manage.py shell 和 SECRET_KEY 在那里。
  • 我的意思是 os.environ.setdefault(....

标签: python django gunicorn


【解决方案1】:

只需要运行:

gunicorn myproj.wsgi:application --env DJANGO_SETTINGS_MODULE='myproj.settings.development'

有一条线

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "videotube.settings.development")

在我的 wsgi.py 中。我不知道为什么,但是 gunicorn 不在乎。

【讨论】:

  • 奇怪..我遇到了同样的问题,但我在 /etc/environment 中为 DJANGO_SETTINGS_MODULE 和 SECRET_KEY 指定了一个环境变量。当我使用开发服务器运行项目时,它运行良好并获取密钥。可能 gunicorn 无法读取环境文件?
猜你喜欢
  • 2016-12-25
  • 2017-10-03
  • 2015-06-09
  • 1970-01-01
  • 2021-06-18
  • 1970-01-01
  • 2017-06-04
  • 1970-01-01
  • 2013-10-08
相关资源
最近更新 更多