我尝试在 CentOS 中将敏感信息设置为环境变量,并将它们传递给主文件中使用的 Flask 配置文件,即init.py。但这没有用。 Flask 应用程序在 Apache 下运行。
我首先以 root 用户身份编辑 /etc/environment
MAIL_USERNAME="[email protected] /cdn-cgi/l/email-protection"
然后退出,重新登录
然后通过运行验证 MAIL_USERNAME 是否已设置
echo $MAIL_USERNAME
这很好用
在configuration.py中,这就是我设置MAIL_USERNAME的方式。
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
出于测试目的,
我打印出 MAIL_USERNAME
in __init__.py
print(MAIL_USERNAME)
然后从终端,如果我运行
python3.4 __init__.py
它打印出 MAIL_USERNAME 的正确值
但是,如果我在网络浏览器上进行测试,则 MAIL_USERNAME 未设置。它显示无。我通过查看 Apache 日志来验证这一点。
任何关于这是如何工作的想法将不胜感激。
Thanks
使用 CLI,根据需要设置环境变量。在 Linux 和 macOS 上,这是通过以下命令完成的export KEY=value
.
之后,环境变量KEY
将可用于您的 Python 脚本或 Flask 应用程序os.environ.get('KEY')
, 像这样:
import os
print os.environ.get('key')
>>> value
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)