Я только что перешел с сервера Ubuntu на 14.0.4 LTS и больше не могу получить доступ к Mailman через веб-интерфейс. Я получаю 403 запрещенную ошибку (Запрещено: у вас нет разрешения на доступ к / cgi-bin / mailman /). Я просмотрел конфигурацию apache несколько раз и не заметил проблемы.
Я использую Apache 2.4.7 и Mailman 2.1.16. Вот конфигурация в моем /etc/mailman/apache2.conf. Я не уверен, где еще посмотреть на этот момент. Может быть проблема с виртуальным хостом?
# Logos:
Alias /images/mailman/ /usr/share/images/mailman/
# Use this if you don't want the "cgi-bin" component in your URL:
# In case you want to access mailman through a shorter URL you should enable
# this:
#ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
# In this case you need to set the DEFAULT_URL_PATTERN in
# /etc/mailman/mm_cfg.py to http://%s/mailman/ for the cookie
# authentication code to work. Note that you need to change the base
# URL for all the already-created lists as well.
<Directory /usr/lib/cgi-bin/mailman/>
AllowOverride all
Options +ExecCGI
AddHandler cgi-script .cgi index.cgi
Order allow,deny
Allow from all
</Directory>
<Directory /var/lib/mailman/archives/public/>
Options +FollowSymlinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
<Directory /usr/share/images/mailman/>
AllowOverride all
Order allow,deny
Allow from all
</Directory>
Нет, это точно не проблема виртуального хоста.
(1)
Вы получите ошибку 403 не только в том случае, если ваши конфигурации apache не разрешены в этих каталогах, но и если даже у apache нет разрешения на доступ к этому каталогу.
Чтобы узнать это, вы можете очень легко это проверить: просто su
пользователю apache (su www-data -c /bin/bash
) и попробуйте зайти в указанный каталог, составить его список, прочитать из него файлы и т. д., точно так же, как apache обслужил ваш запрос.
(2)
В любом случае, обычно error.log
Apache содержит в основном относительно ясные и непонятные аргументы, почему такой запрос не мог быть обслужен.
(3)
Рядом с этим, что может быть: вы можете остановить apache, а затем перезапустить его с помощью strace. Так:
strace -s 200 -f -o trace.txt apachectl start
Это будет медленно, но вы получите очень подробный вход trace.txt
, где вы сможете узнать, в чем именно заключалась проблема. К сожалению, весь этот трюк, вероятно, для вас очень загадочен.
(4) Возможное решение:
Между apache 2.2 и 2.4 синтаксис файла конфигурации немного изменился. Ваше обновление Ubuntu, вероятно, обновило apache, но не изменило конфигурацию. Прочтите это, чтобы получить более подробный ответ: https://httpd.apache.org/docs/2.4/upgrading.html#access .