Kann nicht die Umgebungsvariablen in Django settings
Ich versuche zu Lesen, die Umgebungsvariablen in den Django-Einstellungen, die ich definiert haben, in /home/user/.bashrc (und letztere in der /etc/bash.bashrc ) , aber alles was ich bekomme ist eine KeyError-Ausnahme aus. Ich weiß, dass meine Umgebungsvariablen sind gesetzt, da kann ich drucken Sie Sie in das terminal (echo [$VAR_NAME). Das sollte trivial sein.
Dies ist der code, den ich verwende.
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')
Ich kann einfach nicht finden, was fehlt. Irgendwelche Vorschläge gibt?
Dank
EDIT: Läuft auf Apache mit mod_wsgi.
- Wie sind Sie mit dem server?
- Ich bin mit meinem Projekt auf Apache mit mod_wsgi.
- Sollten diese definiert werden, in der virtualhost-Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich zu verwalten, um mein problem zu lösen mit dieser Lösung:
http://drumcoder.co.uk/blog/2010/nov/12/apache-environment-variables-and-mod_wsgi/
Ich habe gerade vor kurzem festgestellt, die Ursache dieser mich.
Beim laufen unter apache/mod_wsgi, Ihre Anwendung läuft unter einem anderen Benutzer, so dass diese Umgebungsvariablen nicht festgelegt werden. Ihre Optionen sind: