目前我使用Flask微框架。 如何在wsgi文件中设置环境变量? 我在apache2 envvars文件中这样做了:
export PRODROOT=${PRODROOT:-/home/peter/Lv-164.UI/ecomap}
export PYSRCROOT=${PYSRCROOT:-${PRODROOT}/src/python}
export CONFROOT=${CONFROOT:-${PRODROOT}/etc}
export PYTHONPATH=${PRODROOT}/src/python
我如何在wsgi文件中执行此操作? 谢谢你的关注。
答案 0 :(得分:3)
wsgi文件只是一个Python文件,因此您可以使用os.environ
为代码设置环境变量。例如。在你的wsgi文件中:
import os
os.environ['PRODROOT'] = '/home/peter/Lv-164.UI/ecomap'
os.environ['PYSRCROOT'] = os.environ['PRODROOT'] + '/src/python'
os.environ['CONFROOT'] = os.environ['PRODROOT'] + '/etc'
os.environ['PYTHONPATH'] = os.environ['PRODROOT'] + '/src/python'
from yourpackage.yourapp import app as application
我不确定设置PYTHONPATH
是否适用于此方案(尽管值得一试)。如果您正在使用mod_wsgi
,则可以使用WSGIPythonPath
指令进行设置。
https://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIPythonPath