Я недавно обновил свой Ubuntu
с Apache
к 2.4
компилируя его из исходного кода, и в качестве побочного эффекта я сталкиваюсь со странным поведением.
В Apache
может обслуживать файлы локально, но не на других машинах. Например, когда я набираю локальный IP-адрес моей машины 192.168.0.81 на той же машине, он открывает страницу. Но когда я набираю его на другом компьютере (в той же сети), он выдает ошибку «Запрещено 403».
Вот сценарии, которые я уже тестировал:
Завершение работы Apache, чтобы убедиться, что 403 создается правильным Apache. Результаты были положительными, после выключения никакой реакции генерироваться не было.
Как было сказано ранее, загрузка страницы с использованием IP-адреса локальной сети (192.168.0.81), чтобы убедиться, что Apache ее слушает, а не только 127.0.0.1. Результаты были положительными, страницу можно было загрузить на том же компьютере, что и Apache (но не на других машинах).
Тестирование логов Apache: отрицательно. Никакой записи не было сделано ни в access_log, ни в error_log, что бы то ни было. Или, по крайней мере, я не мог его найти!
Лично я считаю, что когда Apache обслуживает файл для локального запроса, он делает это от имени некоторого пользователя, но когда запрос приходит с какой-то другой машины, пользователь меняется, и он (кем бы он ни был) не имеет достаточного доступа, что приводит к Ошибка «Запрещено 403». Итак, чтобы проверить это, я изменил режимы всех файлов на 777, и все же безуспешно.
Какие-либо предложения?
Начиная с версии 2.2 параметры конфигурации, включая часть управления доступом, были изменены..
Вам необходимо проверить конфигурацию apache для доступа и добавить Require all granted
строка где требуется.