我像这样设置 django setting.py:
import os
from django.core.exceptions import ImproperlyConfigured
def get_env_variable(var_name):
try:
return os.environ[var_name]
except KeyError:
error_msg = "Set the %s environment variable" % var_name
raise ImproperlyConfigured(error_msg)
环境变量配置正确。使用 django 内置 Web 服务器时,一切正常。但是使用 apache 和 wsgi,它引发了一个 KeyError。
根据Cannot get environment variables in Django settings file,问题解决。但是为什么apache不能获取系统环境变量呢?
更新:环境变量在 .bashrc 中设置。