© Discript 2018 - 2025

Ошибка 406: что это такое и как её исправить

Представьте, что вы зашли в ресторан с конкретным желанием отведать ваш любимый суп, а официант говорит: «К сожалению, такого блюда у нас нет, и мы не можем приготовить ничего похожего на ваши требования». Примерно то же самое происходит в Интернете, когда сервер не может предоставить страницу или данные в нужном для вашего браузера формате. Именно такая ситуация и порождает ошибку 406 Not Acceptable.

Официальное определение

Ошибка 406 (Not Acceptable) – это код ответа HTTP, указывающий, что сервер не может вернуть данные в формате или виде, соответствующем критериям (заголовку Accept) в запросе клиента.

Почему возникает ошибка 406

Часто причиной становится несовпадение предпочтений, которые указывает браузер (или другое клиентское приложение) при запросе страницы, и тем, что сервер реально может выдать. Если сервер «не понимает», как сформировать ответ в нужном формате, он отвечает кодом 406.

Но есть и другие факторы:

  1. Слишком строгие настройки безопасности (mod_security). На хостингах с веб-сервером Apache включён модуль mod_security, который фильтрует запросы. Если запрос нарушает одно из правил безопасности (например, содержит «подозрительный» фрагмент кода), сервер вместо корректной страницы выдаёт ошибку 406.
  2. Проблемы с заголовками Accept. В HTTP-заголовках запроса клиент может указать конкретный формат: JSON, XML, HTML и т. д. Если сервер не умеет отдавать данные в указанном формате, возникает конфликт.
  3. Неправильная конфигурация .htaccess. Иногда настройки в этом файле препятствуют корректной обработке запросов, особенно если включены или отключены определённые опции, влияющие на согласование контента.
  4. Ошибки в коде сайта или плагинах. Если скрипты формируют неверные ответы или некорректные заголовки, это также может привести к ошибке 406.

Чем грозит ошибка 406 для SEO

Иногда кажется, что это не самая распространённая проблема, но игнорировать её не стоит:

  • Проблемы с индексацией. Если поисковый робот (Яндекс или Google) столкнётся с 406 при попытке проиндексировать страницу, он может «решить», что контент недоступен, и пропустить эту страницу.
  • Снижение доверия пользователей. Когда посетители видят сообщение об ошибке, у них возникает ощущение, что сайт «сломался» или не обновляется.
  • Падение позиций в выдаче. Если поисковики не могут корректно отсканировать сайт, в перспективе это может негативно сказаться на позициях.

Поэтому важно быстро устранить причину ошибки и убедиться, что поисковые системы без проблем «видят» все нужные страницы.

Как обнаружить проблему

Сначала убедитесь, что ошибка действительно появляется регулярно, а не была разовым сбоем. Для этого можно:

  • Проверить сайт через инструменты веб-мастеров:Яндекс.Вебмастер или Google Search Console. Если они фиксируют 406, значит ошибка систематическая.
  • Проанализировать логи сервера. Ваш хостинг провайдер или панель управления (например, cPanel) позволяют просмотреть access-логи и error-логи, где указываются детали HTTP-запросов.

После этого определите, какие именно запросы вызывают ошибку (какие страницы, какие форматы или заголовки), и переходите к исправлению.

Как исправить ошибку 406

Ниже перечислены основные шаги, которые помогут устранить проблему:

  1. Проверить настройки безопасности.
    Перед списком советов стоит уточнить, что делать это нужно аккуратно, ведь безопасность сайта важна.
    • Убедитесь, что в панели управления ваш модуль mod_security настроен корректно.
    • Если подозреваете, что именно он блокирует «безобидные» запросы, можете временно отключить mod_security для конкретного домена и посмотреть, исчезает ли ошибка.
    • Если ошибка пропала — причина найдена. Но оставлять защитный модуль выключенным надолго не стоит. Лучше обратиться к хостеру или настроить исключения, чтобы разрешить нужные запросы, не жертвуя безопасностью.
  2. Откорректировать заголовки Accept.
    Часто клиенты (браузеры, приложения, боты) указывают в запросах такие заголовки, как Accept: application/json, text/html. Если ваш сайт или отдельные страницы не умеют работать с одним из этих форматов, сервер ответит 406.
    • Проверьте, в каком формате ваш сайт отдаёт данные.
    • Если ваша страница чисто HTML, то заголовок Accept: application/json может приводить к конфликту.
    • Чтобы избежать такого, используйте более «гибкие» заголовки вроде Accept: */*, указывая, что готовы принять любые данные.
  3. Изменить настройки .htaccess.
    В файле .htaccess, расположенном в корневой директории сайта, могут содержаться директивы, которые запрещают или перенаправляют определённые форматы ответов.
    • Откройте .htaccess через «Файловый менеджер».
    • Ищите блоки с модулями вроде mod_negotiation.c, RewriteRule, RewriteCond.
    • Иногда достаточно добавить или удалить строчку Options -Multiviews, чтобы решить конфликт форматов.
  4. Проверить плагины и скрипты.
    Если ваш сайт работает на популярной CMS (WordPress, Joomla, 1C-Битрикс и т. д.), посмотрите, не конфликтует ли какой-нибудь плагин с запросами. Выключите плагины по очереди, чтобы найти «виновника».
  5. Связаться с хостинг-провайдером.
    Если после ручной проверки вы не нашли причины, стоит обратиться к поддержке. Возможно, на уровне сервера (Apache, Nginx) установлены фильтры, которые и вызывают 406. Техническая поддержка поможет проверить логи и найти более точное объяснение.

Что делать, чтобы ошибка 406 не вернулась

Как и многие проблемы в веб-разработке, ошибка 406 иногда возвращается, если не устранить первопричину. Чтобы всё работало стабильно:

  • Настройте регулярный мониторинг. Это могут быть сторонние сервисы (например,Ping-Admin.ru) или встроенные в вашу CMS инструменты, которые регулярно проверяют доступность страниц.
  • Следите за логами. Периодически просматривайте логи в панели управления или по FTP, чтобы вовремя замечать подозрительные запросы и всплески ошибок.
  • Обновляйте скрипты, плагины и CMS. Устаревший код часто становится источником ошибок и уязвимостей.
  • Консультируйтесь со специалистами. Если сайт приносит вам доход, имеет смысл периодически проводить аудит безопасности и производительности.

Итоги

Ошибка 406 Not Acceptable на первый взгляд выглядит сложно и может насторожить, однако её причины, как правило, сводятся к конфликту между запросом клиента и тем, что может выдать сервер. Это могут быть слишком «строгие» заголовки Accept, неудачные правила mod_security или некорректные настройки .htaccess.

Главное – не оставлять эту проблему без внимания, ведь от доступности и правильной работы вашего сайта зависят доверие пользователей и позиции в поисковой выдаче. Проверяйте логи, тестируйте отключение модулей безопасности на время, при необходимости просите помощь хостера — и ошибка 406 перестанет вам докучать.

Читайте также:

Другие статьи

Отправьте заявку и уже завтра мы начнем работы.

Обязательное поле для заполнения

Обязательное поле для заполнения

Обязательное поле для заполнения

Обязательное поле

Обязательное поле для заполнения

Обязательное поле для заполнения

Обязательное поле

Спасибо за обращение!
В ближайшее время мы с вами свяжемся.

Далее

Обязательное поле для заполнения

Обязательное поле для заполнения

Укажите предпочтительные каналы связи:

ТелефонWhatsAppTelegram

Обязательное поле