2013-10-11 141 views
1

我试图用虚拟环境与wsgi配置Apache。 但是apache使用另一个版本(1.3.1)来服务我的django。另一个版本是我的标准python安装程序中的默认安装。Django与虚拟环境

PATH

/opt/django/webtools_django15/ 
|-- __init__.py 
|-- myapp 
| |-- __init__.py 
| |-- __init__.pyc 
| |-- myapp.wsgi 
| |-- myapp_settings.py 
| |-- myapp_settings.pyc 
| |-- myapp_urls.py 
| |-- forms.py 
| |-- forms.pyc 
| |-- models.py 
| |-- tests.py 
| |-- views.py 
| |-- views.py-bak 
| `-- views.pyc 
|-- manage.py 
|-- modules 
| `-- dnslookup.py 
|-- static 
| !! omitted !! 
|-- templates 
| `-- myapp 
|  |-- myapp-about.html 
|  |-- myapp-base.html 
|  |-- myapp-cachecheck-result.html 
|  |-- myapp-glossary.html 
|  |-- myapp-home.html 
|  |-- myapp-input-cachecheck.html 
|  |-- myapp-input-cachecheck.html-bak 
|  |-- myapp-input-lookup.html 
|  |-- myapp-input-lookup.html-bak 
|  |-- myapp-input-report.html 
|  |-- myapp-input-report.html-bak 
|  |-- myapp-lookup-result.html 
|  |-- myapp-partners.html 
|  |-- myapp-ratelimited.html 
|  `-- myapp-report-result.html 
`-- webtools_django15 
    |-- __init__.py 
    |-- __init__.pyc 
    |-- settings.py 
    |-- settings.py-bak 
    |-- settings.pyc 
    `-- urls.py 

WSGI FILE

(django15)[[email protected] django]# cat /opt/django/webtools_django15/myapp/myapp.wsgi 
import os 
import sys 
import site 

site.addsitedir("/opt/django/virtenv/django15/lib/python2.7/site-packages/") 

from django.core.handlers.wsgi import WSGIHandler 
sys.path.append('/opt/django/webtools_django15/') 
sys.path.append('/opt/django/') 

os.environ['DJANGO_SETTINGS_MODULE'] = 'myapp.myapp_settings' 
application = WSGIHandler() 

APACHE

<VirtualHost *:80 > 
    DocumentRoot /opt/django/webtools_django15/ 
    ServerName myapp.co.uk 
    ServerAlias www.myapp.co.uk direct.myapp.co.uk 

    WSGIApplicationGroup myapp 
    WSGIScriptAlias//opt/django/webtools_django15/myapp/myapp.wsgi 
    WSGIDaemonProcess myapp processes=5 python-path=/opt/django/webtools_django15:/opt/django/virtenv/django15/lib/python2.7/site-packages/ threads=1 

    Alias /static/ /opt/django/webtools_django15/static/ 
    ErrorLog logs/myapp-error.log 
    CustomLog logs/myapp-access.log common 
</VirtualHost> 

正在发生什么的任何想法...?

+0

可能你应该尝试'/ opt/django/virtenv/django15/lib/python2.7/site-packages /'而不用斜线?即'/ opt/django/virtenv/django15/lib/python2.7/site-packages' – ivanperelivskiy

回答

2

您缺少一个WSGIProcessGroup指令来告诉mod_wsgi在您配置的守护程序进程中运行。用途:

WSGIProcessGroup myapp 
WSGIApplicationGroup %{GLOBAL} 

后者并不是必需的,但如果使用第三方的Python C扩展不子解释(二次应用程序组)工作,可避免的问题。