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

Директива Apache 2.0 ErrorDocument не работает при получении самого корневого каталога

Я отвечаю за сайт, использующий Apache 2.0 в Red Hat 4.1.2.

Я настроил сайт для отображения настраиваемой страницы ошибок, добавив эту строку в файл .htaccess в корневом каталоге сайта:

ErrorDocument 403 /403.html

Для тестирования я заблокировал собственный IP-адрес в приложении сайта; в результате получается что-то вроде этого в файле .htaccess (я отредактировал список для краткости и изменил IP-адреса):

SetEnvIfNoCase REMOTE_ADDR "^(0\.0\.0\.1|0\.0\.0\.2|0\.0\.0\.3).*" BadIP
deny from env=BadIP

Когда я пытаюсь получить доступ к сайту с "плохого" IP-адреса, я получаю настраиваемую страницу с ошибкой, если пытаюсь получить определенную страницу (например, http://example.com/index.html).

Однако, если я попытаюсь получить только корневой каталог (например, http://example.com), то вместо этого я получаю тестовую страницу Apache.

Есть ли способ получить корневой каталог сайта для работы с настраиваемой страницей ошибок?

РЕДАКТИРОВАТЬ: Я думаю, что, возможно, вызвал некоторую путаницу. Чтобы уточнить:

ОБНОВИТЬ:

Я пробовал это на более поздней версии Apache (2.2.25). Я тоже пробовал без директива ErrorDocument или прочее SetEnv. Файл .htaccess содержит только эти 3 строки:

order allow,deny
allow from all
deny from 0.0.0.0

где 0.0.0.0 заменяется моим фактическим IP-адресом.

Результат тот же: при получении example.com я получаю тестовую страницу Apache «Если вы можете прочитать эту», а при получении example.com/x я получаю встроенную «Запрещено ... у вас нет разрешения. для доступа к / x на этом сервере ».