Назад | Перейти на главную страницу

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

Эта проблема мучила меня несколько дней. Я использую Apache, WSGI и django на своем Raspberry Pi. Операционная система - Raspbian.

Все нормально, кроме этой ошибки от apache.

[error] [client 127.0.0.1] Target WSGI script not found or unable to stat: /home/pi/EZ_Green/apache/ems_gateway_django.wsgi

Мой файл конфигурации выглядит так, довольно просто

WSGIDaemonProcess ems.ezgreenbuildings.com processes=1 maximum-requests=100 threads=10
WSGIScriptAlias / /home/pi/EZ_Green/apache/ems_gateway_django.wsgi

Путь к файлу - это точно полный путь. Итак, файл существует. Затем я подумал, что процесс сервера apache не имеет разрешения на доступ к файлу, поэтому я изменил режим файла wsgi на 777. Но он по-прежнему сообщает ту же ошибку.

Я искал какое-то время и пробовал несколько методов.

  1. переместите файл wsgi в другой файл, например, '/ var / www', но он по-прежнему не может его найти.
  2. попробуй переустановить апач, не получается.
  3. удалить завершающую косую черту

Странно то, что apache работает нормально, если я удалю файл конфигурации wsgi. И сам django работает нормально, если я запускаю тестовый сервер, предоставленный django.

Если кто может помочь, буду очень рад. Спасибо!

Включены ли у вас расширения SELinux, предотвращающие доступ Apache к каталогам, в которых существуют файлы?

Будут ли разрешения в домашнем каталоге разрешать доступ Apache? Недостаточно, чтобы только файл был доступен для чтения, все его каталоги также должны быть доступны.

Не связано, но есть ли у вас директива WSGIProcessGroup, соответствующая WSGIDaemonProcess, чтобы запросы действительно делегировались для выполнения в процессе демона?

Наконец, вы можете не использовать «процессы = 1», поскольку по умолчанию используется один процесс, а установка «процессов» для любого числа имеет другие последствия, поскольку в среде WSGI он будет отмечать, что это конфигурация с несколькими процессами.