406 ошибка. Что за зверь?

Статус
В этой теме нельзя размещать новые ответы.

saidxxx

Постоялец
Регистрация
6 Фев 2007
Сообщения
496
Реакции
160
Сайт не индексируется Яшей, написал Платону.


Ответ:
Сервер, на котором находится Ваш сайт, на запрос множества страниц сайта
возвращает код ошибки 406. Я рекомендую Вам обратить с данным вопросом к
администратору сервера и проверить, что именно получает наш робот.


Что за ошибка такая и как ее разрулить?
 
Если ваш php-скрипт начинает выдавать 406-ую ошибку (точнее не сам скрипт, а apache) со словами “An appropriate representation of the requested resource /***.php could not be found on this server”, то скорее всего apacheвскому mod_security что-то не нравится в вашем скрипте.

Например, ваш скрипт может принимать в качестве параметра какие-нибудь URLы, а mod_security будет думать, что злобный хакер пытается выполнить remode code injection. Или ещё что-нибудь.

Если вы уверены в своём скрипте, то можно попробовать отключить mod_security. Проще всего это сделать, добавив две директивы в .htaccess:
SecFilterEngine Off
SecFilterScanPOST Off

Если не получается отрубить mod_security с помощью .htaccess, отключайте его с помощью httpd.conf.

Если это не разрешает сделать админ или ваша религия, то читайте логи (типа такого: [mod_security: Access denied with code 406. Pattern match “\\\\.php(3|4|5)?(\\\\?|&).*=(ht|f)tps?:/.*(\\\\?|&) ” at REQUEST_URI [id “300018″] [rev “1″] [msg “Generic PHP code injection protection”] [severity “CRITICAL”] …]) и модифицируйте скрипт таким образом, чтоб он не вызывал подозрений у mod_security.


Суть дела в том, что addurl передает в заголовке http-запроса Accept: text/html (основной робот яндекса - чуть больше форматов), что и приводит к выдаче 406-й ошибки неправильно настроенными http-серверами, которые на каком-то этапе думают, что не могут отдать html-документ.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху