希望你一切都好。
我在 virtualenv postactivate 文件中添加了几个环境变量,例如:
export DATABASE_USER="root"
export DATABASE_PASSWORD="12345678"
然后,我使用 os.environ['DATABASE_USER'] 在我的 settings.py 中分配这些变量,例如
DATABASE_USER = os.environ['DATABASE_USER']
由于我的 Apache 虚拟主机文件包含
WSGIDaemonProcess mysite.local python-path=/my/python/path:/path/to/my/project/venv/lib/python2.7/site-packages
WSGIProcessGroup mysite.local
WSGIScriptAlias / /path/to/my/project/wsgi.py
据我了解,这告诉 mod_wsgi 以守护程序模式运行以及使用哪个 virtualenv。由于它知道要使用哪个 virtualenv,我会想象它会运行 postactivate,从而启用我的环境变量,但事实并非如此。
难道我做错了什么?欢迎任何建议或建议。