- 使用Apache mod_wsgi的no-site-packages

时间:2013-04-03 01:09:30

标签: python mod-wsgi virtualenv

我将Django 1.5安装到使用--no-site-packages选项创建的虚拟环境中。

尽管virtualenv的site-packges路径被添加到wsgi文件中的ystem路径,但Apache忽略了Django1.5并使用了Django 1.3(以前安装到全局python库)

可能导致此问题的原因以及如何解决? 你可以在下面找到我的django.wsgi文件,我可以提供任何必要的信息。

django.wsgi

import os
import sys
import site

vepath = '/home/myuser/projects/myenviron/lib/python2.7/site-packages'
site.addsitedir(vepath)


sys.path.append('/home/myuser/projects/')
sys.path.append('/home/myuser/projects/myproject/')

os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

1 个答案:

答案 0 :(得分:0)

您必须使用相当旧版本的virtualenv,因为--no-site-packages选项现在已被弃用,因为它是默认值。因此,您不需要明确提供它。

无论如何,请阅读:

更好的是,使用mod_wsgi守护进程模式和python-home选项。