我正在尝试读取Django设置中的一些环境变量,我在/home/user/.bashrc中定义了该变量(后来在/etc/bash.bashrc中定义了),但是我得到的只是一个KeyError异常。我知道我的环境变量已设置,因为我可以在终端(回显$ VAR_NAME)中打印它们。这应该是微不足道的。
这是我正在使用的代码。
from django.core.exceptions import ImproperlyConfigured msg = "Set the %s environment variable" def get_env_variable(var_name): try: return os.environ[var_name] except KeyError: error_msg = msg % var_name raise ImproperlyConfigured(error_msg) OS_DB_USER = get_env_variable('MY_USER') OS_DB_PASS = get_env_variable('MY_PASS') OS_DB_DB = get_env_variable('MY_DB') OS_GAME_LOGS = get_env_variable('DIR_LOGS')
我只是找不到什么。有什么建议吗?
谢谢
编辑:使用mod_wsgi在Apache上运行。
我已经设法通过使用以下解决方案来解决我的问题:
http://drumcoder.co.uk/blog/2010/nov/12/apache-environment-variables-and- mod_wsgi/