【问题标题】:Environment variables works on Django's server but not on Apache server环境变量适用于 Django 的服务器,但不适用于 Apache 服务器
【发布时间】:2021-10-27 01:02:46
【问题描述】:
当我在 Django 的服务器中使用环境变量时,它可以工作。
SMTP_PASSWORD = os.environ["SMTP_PASSWORD"]
但是,当我在 Apache 上运行相同的代码时,却没有。代码os.environ["..."] 不起作用。
我使用的是 Windows 10、Python 3.9.5 和 Django 3.2.4。
知道发生了什么吗?
【问题讨论】:
标签:
python-3.x
django
apache
environment-variables
【解决方案1】:
您可以将环境变量放在 apache 配置中。
<VirtualHost hostname:443>
...
SetEnv SMTP_PASSWORD smtp_password
...
</VirtualHost>
如果您不想将敏感信息放在 apache 配置中,您仍然可以在文件中包含环境变量,以便在服务器启动时读取它,或者您可以将这些变量存储在数据库中。