Я использую Apache 2.4.7 на debian unstable. Я получаю 403 ошибки при попытке запустить сверхзвуковой с помощью модуля mod_wsgi. Я повернул LogLevel для wsgi и authz_core до trace6
, но я по-прежнему не получаю никаких полезных сообщений. Обратите внимание, что я использую mod_access_compat
, поэтому комбинация Order ... Allow действительна.
Я хотел бы конкретно посмотреть, какой файл конфигурации (например, какой-нибудь файл .htaccess где-нибудь или один из стандартных файлов конфигурации apache или debian) и в какой строке содержится правило, которое генерирует ошибку 403.
Я вручную прошелся по дереву, проверяя на каждом уровне, что пользователь, на котором запущен веб-сервер, имеет права на чтение файлов, а также чтение и выполнение для каталогов.
мой /etc/apache2/apache.conf
файл i включает строку:
LogLevel info authz_core:trace6 wsgi:trace6
Конфигурационный файл apache для supysonic, /etc/apache2/conf-enabled/supysonic.conf
является:
WSGIScriptAlias /supysonic /mnt/large_vol/home/bminton/public_html/programs/supysonic
<Directory /mnt/large_vol/home/bminton/public_html/programs/supysonic>
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
Журнал ошибок содержит следующие строки:
[Wed Jan 15 08:40:34.106119 2014] [authz_core:debug] [pid 13558] mod_authz_core.c(802): [client 127.0.0.1:58438] AH01626: authorization result of Require all denied: denied
[Wed Jan 15 08:40:34.106197 2014] [authz_core:debug] [pid 13558] mod_authz_core.c(802): [client 127.0.0.1:58438] AH01626: authorization result of <RequireAny>: denied
[Wed Jan 15 08:40:34.106208 2014] [authz_core:error] [pid 13558] [client 127.0.0.1:58438] AH01630: client denied by server configuration: /mnt/large_vol/home/bminton/public_html/programs/supysonic
[Wed Jan 15 08:40:34.113336 2014] [:info] [pid 13571] mod_wsgi (pid=13571): Initializing Python.
[Wed Jan 15 08:40:34.154407 2014] [:info] [pid 13571] mod_wsgi (pid=13571): Attach interpreter ''.
Ошибка 403 связана с авторизацией пользователя, а не совсем с кодом вашего приложения.
Вы сказали, что используете apache версии 2.4, тогда это определенно неверно:
Order deny,allow
Allow from all
Теперь это должно быть написано так (только 1 строка):
Require all granted