Saleor 找不到 SECRET_KEY 尽管 Python 可以找到它
Saleor Can't Find SECRET_KEY Even Though Python Can Find It
尝试启动 Saleor 时,出现以下错误,提示找不到 SECRET_KEY
堆栈:
Debian
Python 3.7.4
Saleor(最新日期为 7-25-19)
:/$ sudo python manage.py migrate
回溯(最后一次调用):
文件 "manage.py",第 10 行,位于
execute_from_command_line(sys.argv)
...
...
文件“/usr/local/lib/python3.7/site-packages/django/conf/init.py”,第 178 行,在 init
提高配置不当("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: SECRET_KEY 设置不能为空。
我完成了
:/$ env
看看
SECRET_KEY=the-secret-key
我也输入了 python 提示并尝试了
>>> import os
>>> print(os.environ.get("SECRET_KEY"))
the-secret-key
因此该值似乎设置为可访问,但系统似乎无法找到它。
尝试sudo -E python manage.py migrate
-E 标志使用 sudo 保留环境变量。
为了澄清之前的回答,您需要记住 环境变量的范围仅限于用户。因此,当您 运行 使用 sudo
的进程时,您的 用户定义的环境变量将对超级用户不可用(除非您通过 -E
旗帜)。比较 运行ning env
和 sudo env
的结果,你会看到不同的变量和值。
这个问题的另一种常见解决方案是在执行脚本时在线声明变量,例如sudo SECRET_KEY=xyz python manage.py migrate
尝试启动 Saleor 时,出现以下错误,提示找不到 SECRET_KEY
堆栈:
Debian
Python 3.7.4
Saleor(最新日期为 7-25-19)
:/$ sudo python manage.py migrate
回溯(最后一次调用): 文件 "manage.py",第 10 行,位于 execute_from_command_line(sys.argv)
... ...
文件“/usr/local/lib/python3.7/site-packages/django/conf/init.py”,第 178 行,在 init 提高配置不当("The SECRET_KEY setting must not be empty.") django.core.exceptions.ImproperlyConfigured: SECRET_KEY 设置不能为空。
我完成了
:/$ env
看看
SECRET_KEY=the-secret-key
我也输入了 python 提示并尝试了
>>> import os
>>> print(os.environ.get("SECRET_KEY"))
the-secret-key
因此该值似乎设置为可访问,但系统似乎无法找到它。
尝试sudo -E python manage.py migrate
-E 标志使用 sudo 保留环境变量。
为了澄清之前的回答,您需要记住 环境变量的范围仅限于用户。因此,当您 运行 使用 sudo
的进程时,您的 用户定义的环境变量将对超级用户不可用(除非您通过 -E
旗帜)。比较 运行ning env
和 sudo env
的结果,你会看到不同的变量和值。
这个问题的另一种常见解决方案是在执行脚本时在线声明变量,例如sudo SECRET_KEY=xyz python manage.py migrate