当我部署使用django测试服务器工作正常的应用程序时,我通常会使用pip install -e ....#egg = foo为我安装的每个软件包出错。我通常使用virtualenv来做这个,它将文件放入env / src / foo并将另一个文件放入python / site-packages(这是django-css的一个例子):
django-css.egg-link,其中包含以下行:
/home/pinax-0.7.1/src/django-css
.
我如何告诉wsgi它应该遵循这些链接,或者我是否完全做错了。
感谢, Philipp Wassibauer
答案 0 :(得分:4)
这是我在virtualenv中的Django WSGI脚本的样子:
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'
import site
site.addsitedir('/path/to/virtualenv/lib/python2.6/site-packages')
from django.core.handlers.wsgi import WSGIHandler
application = WSGIHandler()
密钥位为site.addsitedir(...)
,它将指定目录中任何*.pth
个文件的内容添加到sys.path
。在这种情况下,它是Python需要帮助查找的easy-install.pth
文件。
答案 1 :(得分:0)
modwsgi文档有how to use virtualenv的注释。它通常就像修改django.wsgi
(或任何你称之为)文件一样简单,以便将virtualenv环境添加到modwsgi的路径。
This link有一些关于使用pip / virtualenv / modwsgi的额外的,提炼的注释。