[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: apache 2.2 и ErrorDocument в .htaccess
Invis1ble
Случайно обнаружил такую вещь.
В .htaccess прописан список директив ErrorDocument (с 400 по 417 и с 500 по 505), пример
ErrorDocument 403 /errors/403.html

так вот, при попытке доступа к директории errors (это для примера, можно взять любую другую директорию) - выводится 403.html (Forbidden), как и положено, т.к. в .htaccess стоит
Options -Indexes

И все бы хорошо, но вот если ввести в адресную строку 100500 символов, например:
http://domain/errors/тут100500символов

то, вместо красивой html-странички 414 Request-URI Too Long, наблюдается дефолтная апачевская страница.
То же самое можно воспроизвести не только с 414, но и с 403 - для этого достаточно скопипастить пару-тройку десятков раз url, например
http://domain/http://domain/http://domain/...

- получаем 403 от apache с его фирменным автографом внизу, вместо 403.html
Так вот, кто может объяснить причину происходящего? Почему сервер не всегда берет указанную html при ошибке, а пихает свою?



Спустя 27 минут, 59 секунд Invis1ble написал(а):
PS. Фрагменты из лога апача, относящиеся к "проблемным" случаям (414 и 403 соответственно):
Цитата
[Fri Jan 27 06:39:21 2012] [error] [client 127.0.0.1] (OS 87)Параметр задан неверно.  : Cannot map GET /errors/qqqqq.... # тут 100500 символов
...
[Fri Jan 27 07:14:18 2012] [error] [client 127.0.0.1] (20024)The given path is misformatted or contained invalid characters: Cannot map GET /http://domain/http://domain/... # тут 100500 раз копипаста




Спустя 2 часа, 27 минут, 30 секунд (27.01.2012 - 10:44) VELIK505 написал(а):
полный путь укажите к страницам ошибок
ErrorDocument 403 http://mysite.ru/errors/403.html
ErrorDocument 404 http://mysite.ru/errors/404.html
и тд

Спустя 2 часа, 12 минут, 54 секунды (27.01.2012 - 12:57) neadekvat написал(а):
Цитата (VELIK505 @ 27.01.2012 - 11:44)
полный путь укажите к страницам ошибок

Уж коль указывать - дак от корня.

Спустя 4 часа, 30 минут, 52 секунды (27.01.2012 - 17:28) asokol написал(а):

Спустя 15 часов, 31 минута, 58 секунд (28.01.2012 - 09:00) VELIK505 написал(а):
Цитата (neadekvat @ 27.01.2012 - 09:57)
Цитата (VELIK505 @ 27.01.2012 - 11:44)
полный путь укажите к страницам ошибок

Уж коль указывать - дак от корня.

Не нужен там путь полный от корня, нужен полный путь от домена как я сказал.

Спустя 2 дня, 23 часа, 12 минут, 50 секунд (31.01.2012 - 08:13) Invis1ble написал(а):
Указание полного физического пути либо полного URL
ErrorDocument 403 C:\apache\host\www\errors\403.html
ErrorDocument 403 http://host/errors/403.html
не решает проблему, более того
при указании полного физического пути в логах появляется запись
[Tue Jan 31 07:18:23 2012] [notice] cannot use a full URL in a 401 ErrorDocument directive --- ignoring!
[Tue Jan 31 07:18:23 2012] [error] [client 127.0.0.1] Directory index forbidden by Options directive: C:/apache/host/www/errors/
а при полном URL
[Tue Jan 31 07:22:29 2012] [notice] cannot use a full URL in a 401 ErrorDocument directive --- ignoring!
[Tue Jan 31 07:22:29 2012] [error] [client 127.0.0.1] Directory index forbidden by Options directive: C:/apache/host/www/errors/
[Tue Jan 31 07:22:29 2012] [notice] cannot use a full URL in a 401 ErrorDocument directive --- ignoring!

Во всех случаях проверял GET-запросом http://host/errors/

Только при относительном пути
ErrorDocument 403 /errors/403.html
не было нотайсов:
[Tue Jan 31 07:23:45 2012] [error] [client 127.0.0.1] Directory index forbidden by Options directive: C:/apache/host/www/errors/


PS. Кстати, почему в логах фигурирует именно 401, я тоже так и не понял.
PPS. Проблема наблюдается не только на windows

Спустя 2 часа, 28 минут, 6 секунд (31.01.2012 - 10:41) Winston написал(а):
А попробовать
Redirect 414 /errors/414.html

Не катит?

Спустя 13 минут, 28 секунд (31.01.2012 - 10:54) Winston написал(а):
Или может статья чем поможет?

Спустя 20 часов, 15 минут, 41 секунда (1.02.2012 - 07:10) Invis1ble написал(а):
Winston
Цитата
Redirect 414 /errors/414.html

как я понял, это совсем из другой оперы
Цитата
Или может статья чем поможет?

не помогла


_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.