Целевой сценарий WSGI не может быть загружен как модуль Python

Я пытаюсь развернуть 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 нет правильных разрешений. Однако я не знаю, как это исправить. Я также попытался запустить демон с пользователем www-data, и это не решило проблему.

РЕДАКТИРОВАТЬ :

Я решил это, скопировав файл виртуальных хостов в файл по умолчанию, а затем отключив старый. с a2дисситом. Я понятия не имею, как я могу сделать это «правильно» и настроить так, чтобы apache перешел на виртуальный хост, который я хочу.

48
задан Adam Thomas 23 June 2011 в 14:26
поделиться

1 ответ

У меня была та же ошибка

, Целевой сценарий WSGI не может быть загружен как модуль Python

, Это было то, потому что путь Python не был добавлен в apache.conf

В зависимости от Apache и версии Ubuntu, необходимо обновить apache.conf или httpd.conf файл с pythonWSGIPath

В моем случае, я должен отредактировать apache.conf

sudo nano /etc/apache2/apache2.conf

, Затем добавляют, следующая строка в конце (Измените my_project на проект название проекта)

WSGIPythonPath /var/www/my_project

, И все работает с очарованием

0
ответ дан 26 November 2019 в 18:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: