Я пытаюсь развернуть mod_wsgi с apache для запуска приложения django, но получаю ошибку 500 внутренняя ошибка сервера Журналы apache показывают:
[Thu Jun 23 14:01:47 2011] [error] [client 152.78.95.64] mod_wsgi (pid=16142): Exception occurred processing WSGI script '/home/user/bms/apache/django.wsgi'.
[Thu Jun 23 14:01:47 2011] [error] [client 152.78.95.64] Traceback (most recent call last):
[Thu Jun 23 14:01:47 2011] [error] [client 152.78.95.64] File "/home/user/bms/apache/django.wsgi", line 13, in <module>
[Thu Jun 23 14:01:47 2011] [error] [client 152.78.95.64] import django.core.handlers.wsgi
[Thu Jun 23 14:01:47 2011] [error] [client 152.78.95.64] ImportError: No module named django.core.handlers.wsgi
Мой виртуальный хост apache выглядит следующим образом:
<VirtualHost *:80>
DocumentRoot /home/user/bms
<Directory /home/user/bms>
Order allow,deny
Allow from all
</Directory>
WSGIDaemonProcess bms user=user group=user processes=2 threads=25 python-path=/usr/local/lib/python2.7/site-packages
WSGIProcessGroup bms
WSGIScriptAlias / /home/user/bms/apache/django.wsgi
</VirtualHost>
И указанный файл wsgi в каталоге моего приложения с разрешениями 0777:
import os
import sys
path = '/home/user/bms'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'bms.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Я слышал, что это может быть из-за того, что пользователь apache не имеет правильных разрешений.Однако я понятия не имею, как это исправить.Я также попытался запустить deamon с пользователем www-data, но это не решило проблему.
EDIT :
Я решил это, скопировав файл виртуальных хостов впо умолчанию, а затем отключение старого с помощью a2dissite.Я понятия не имею, как я могу сделать это "должным образом" и настроить его так, чтобы apache перешел к виртуальному хосту, который я хочу, хотя.