Как исправить ошибку «HTTP 406 недопустимо»? Исправление на стороне клиента и сервера

Опубликовано: 2024-01-26

Оглавление
Что такое ошибка HTTP 406?
Как исправить ошибку 406?
Клиентские решения
Серверные решения
Как предотвратить ошибку 406?
Заключение
Часто задаваемые вопросы

Что такое ошибка HTTP 406?

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

Таким образом, эта конкретная ошибка 406 «Недопустимо» также контрастирует с ошибками сервера 5xx, такими как 504 «Тайм-аут шлюза».

Это одна из самых редких ошибок HTTP, с которой вы вряд ли столкнетесь при работе в Интернете, но если вам посчастливилось увидеть эту ошибку на своем веб-сайте, обычно она выглядит так:

406 Not Acceptable Error
406 Неприемлемая ошибка

На изображении выше вы можете видеть, что ошибка 406 подтверждается дополнительным сообщением об ошибке: « На этом сервере не удалось найти подходящее представление запрошенного ресурса». Эта ошибка была сгенерирована Mod_Security. »

Это не очень полезно для людей, особенно для тех, кто не разбирается в технике, и даже звучит довольно загадочно и роботизированно. Итак, давайте упростим вам понимание того, что именно пытается сказать это сообщение об ошибке.

Клиент, то есть браузер или устройство, пытается сообщить, что они пытались показать веб-страницу, но возникли некоторые возможные проблемы, такие как:

1. Сервер отправил неправильный файл, который не поддерживается браузером.

2. Сервер не может обеспечить действительные требования безопасности или, возможно, не соблюдает протоколы.

Понимание ошибки HTTP 406

Начнем с очень простого языка: эта ошибка 506 просто показывает, что сервер не может отправить соответствующие данные в том формате, который запрашивается клиентом, то есть веб-браузером.

Клиент, то есть ваш веб-браузер, имеет определенные критерии или форматы, которые он может принять с помощью заголовка «Принять». Но если сервер не может удовлетворить этим критериям, он ответит ошибкой кода состояния HTTP 406.

Теперь наступает самое сложное: выяснить точную причину этой ошибки может быть очень проблематично, поскольку проблема может возникнуть из любого места на сервере и в цепочке связи клиента.
Но каковы бы ни были причины, вот некоторые методы, которые вы можете попробовать исправить эту ошибку HTTP 406.


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

Вот некоторые методы устранения неполадок, которые вы можете использовать, чтобы исправить ошибку 406.

Клиентские решения

1. Проверьте правильность введенного URL или нет.

Это звучит очевидно и очень просто, но поверьте нам, это самый простой и быстрый способ исправить ошибку 406.

Хотя на самом деле ошибка 406, скорее всего, больше, чем кажется на первый взгляд, в этот момент, если вы ввели неправильный URL-адрес, и он недействителен, вы можете столкнуться с сообщением об ошибке «406 Неприемлемо».

Чтобы решить эту проблему, все, что вам нужно сделать, это просто еще раз проверить введенный URL-адрес и убедиться, что все правильно или нет. Такой как,

  • Проверьте наличие орфографических ошибок
  • Проверьте, введен ли какой-либо специальный символ, который является недопустимым.
  • Попробуйте ввести URL-адреса других страниц, чтобы проверить, происходит ли это только с одной страницей.

Если ошибка не устранена, ознакомьтесь с другими нашими решениями.

2. Сбросьте и настройте свою сеть и устройства.

Поскольку ошибка 406 является проблемой на стороне клиента, некоторые платформы, такие как онлайн-игры или службы потокового мультимедиа, такие как Netflix и платформа потоковой передачи музыки Spotify, также могут быть неспособны удовлетворить запрос клиента, что приводит к отображению этой ошибки.

В этот момент вы можете подумать, что это проблема на стороне сервера, но существует более высокая вероятность того, что проблема возникла на стороне клиента. Это может быть ваш персональный компьютер, подключение к Интернету или любое устройство, которое вы использовали для запуска этих платформ.

Поскольку в основном это происходит из-за несовместимости или неподдерживаемых сервером заголовков, вы можете ожидать эту ошибку на любой платформе, будь то Netflix, Amazon Prime, Hulu и т. д.

Кроме того, мы не можем объяснить каждый шаг по устранению ошибки 406 на каждой из этих платформ. Однако вы можете выполнить следующие основные шаги для каждой платформы и посмотреть, устранена ли ошибка.

  • Перезагрузите сетевое устройство, например маршрутизатор, выключив его или отсоединив от источника питания. > Подождите некоторое время (около 2 минут) > Подключите его снова и включите устройство.
  • Аналогичным образом вы также можете перезагрузить игровую систему, персональный компьютер, устройства OTT и т. д.
  • Попробуйте подключить потоковое устройство к другой сети, например WLAN или мобильной сети, и проверьте, сохраняется ли ошибка.
  • Проверьте текущую версию приложения потокового мультимедиа и обновите ее, если она доступна.
  • Если ни один из вышеперечисленных методов не работает, лучшее, что вы можете сделать, — это поискать форумы и руководства, доступные в Интернете на каждой потоковой платформе.

3. Откатите недавние обновления WordPress.

Примечание. Прежде чем пытаться что-либо изменить на веб-сайте, первое, что вам нужно сделать, — это в качестве меры предосторожности сделать полную резервную копию вашего веб-сайта. Так что, если что-то пойдет не так, вы все равно сможете вернуться на свой сайт целыми и невредимыми.

Если вы недавно обновили свой WordPress, незадолго до появления кода ошибки 406, рассмотрите возможность немедленного возврата к предыдущей версии.

Для справки вы можете прочитать специальный пост «Как переустановить WordPress?». 4 лучших метода, которым стоит следовать».

Аналогично, любые расширения или модули, которые вы недавно обновили, также могут вызывать проблемы на стороне сервера, поэтому возврат к предыдущим версиям также может помочь.

4. Удалите недавно добавленные расширения, плагины или темы.

Если вы недавно добавили какое-либо расширение, плагин или тему независимо от того, какую систему управления контентом вы используете, и впоследствии увидели ошибку 406. Лучше проверить, не они ли создали проблему.

Это связано с тем, что эти плагины или темы имеют доступ к вашей базе данных и могут вносить в нее изменения, например добавлять дополнительный код в файлы вашего сайта или изменять записи базы данных. Эти действия могут привести к возникновению HTTP-ошибки 406.

Лучший способ выявить проблемные плагины или темы — деактивировать их один за другим и посмотреть, появляется ли ошибка 406 по-прежнему. Если ошибка исчезнет, ​​скорее всего, виноват деактивированный плагин или тема.

Deactivate Plugin
Деактивировать плагин

5. Найдите изменения в записях базы данных.

Как упоминалось в разделе выше, некоторые плагины и темы могут изменять записи вашей базы данных. Следовательно, даже после удаления или удаления их с панели управления WordPress некоторые следы могут все еще присутствовать в базе данных.

Эти следы все еще могут быть причиной возникновения ошибки 406.

Лучшее, что вы можете сделать, это открыть базу данных с помощью Adminer или phpMyAdmin и просмотреть таблицы.

Проверьте таблицы и записи WordPress, которые могут быть изменены плагинами или темами.

Checking WordPress Database
Проверка базы данных

Информация : Если ваш веб-сайт размещен на сервере WPOven, вы можете легко получить доступ к своей базе данных с помощью инструмента управления базой данных .


Серверные решения

Если вы не используете какую-либо CMS, например WordPress, или после того, как попробовали все вышеперечисленные методы, все еще сталкиваетесь с ошибкой HTTP 406. Вот некоторые другие методы устранения неполадок, которые вы можете использовать на стороне сервера.

6. Проверьте журналы сервера

Один из лучших способов проверить, не пошло ли что-то не так на стороне сервера, — это проверить журналы сервера. Независимо от того, какую CMS, платформу веб-сайта или веб-приложение вы используете, у всех них есть доступные журналы на стороне сервера.

Эти журналы сервера содержат важную информацию о работоспособности и состоянии сервера или оборудования, используемого для запуска веб-приложения.


Читайте: Как настроить и использовать журнал ошибок WordPress для сайта WordPress?
Для пользователей WPOven прочтите: Как просмотреть журналы доступа и ошибок?


7. Проверьте конфигурацию веб-сервера.

Если вы не можете устранить ошибку « 406 Not Acceptable », следующим шагом будет проверка файлов конфигурации вашего веб-сервера. Эта ошибка обычно означает, что веб-сервер ограничивает доступ пользователей к определенному URL-адресу.

Следовательно, необходимо проверить конфигурацию вашего веб-сервера на наличие каких-либо инструкций по обработке запросов или непреднамеренных перенаправлений.

Чтобы проверить конфигурацию вашего веб-сервера, первым делом необходимо определить, какое серверное программное обеспечение использует ваш сайт. Это может быть NGINX или Apache.

Если ваш веб-сайт использует Apache, найдите файл .htaccess в корневом каталоге системных файлов вашего веб-сайта. Однако, если ваш веб-сайт использует веб-сервер NGINX, вместо этого вам придется искать файл NGINX.conf.

Вы также можете прочитать нашу специальную статью «Файл WordPress .htaccess: как его создать и отредактировать?»

Как только вы сможете найти файл .htaccess, откройте его в текстовом редакторе и найдите директивы, использующие флаги 406.

Например, вот директива блока (т. е. именованный набор директив), которая настраивает виртуальный сервер для WPOven.com и гарантирует, что, как и выше, запрос к

https://wpoven.com./users/json, который не содержит заголовок запроса Accept: application/JSON, завершится ошибкой и будет встречен кодом ответа 406:

server {
listen 80;
listen 443 ssl;
server_name wpoven.com;
location /users/json {
if ($http_accept != application/json) {
return 406 https://wpoven.com/users/json$request_uri;
}
}
}

Теперь вам нужно внимательно просмотреть файл nginx.conf и посмотреть, нет ли в нем каких-либо подозрительных, аномальных директив или строк, содержащих флаги 406. Если ошибка обнаружена, отметьте ее как «комментарий», а затем перезапустите сервер, чтобы проверить, исчезнет ли ошибка.

8. Отладка WordPress

Как мы упоминали ранее, многие веб-приложения предоставляют журналы ошибок и даже отладку вместе с ними.

Отладка — это процесс, который включает в себя обнаружение мелких ошибок или ошибок в кодах приложения и их удаление. Чтобы узнать больше об отладке WordPress, прочтите нашу специальную публикацию «Отладка WordPress: как включить WP_DEBUG?»

9. Проверьте правила безопасности сервера.

  • Правила безопасности сервера направлены на защиту вашего сервера и веб-сайта от вредоносных действий, таких как DDoS-атаки и т. д.
  • Но иногда эти правила могут быть слишком строгими, что приводит к блокировке законных запросов и возникновению кода ошибки 406.
  • Например, если правило безопасности настроено на блокировку запросов с определенных IP-адресов, оно также может непреднамеренно заблокировать и подлинных пользователей.
  • Чтобы избежать такой ситуации, важно проверить правила безопасности вашего сервера и, если возможно, внести небольшие изменения, чтобы разрешить действительные запросы, не нарушая защиту и функциональность веб-сайта.

Как предотвратить ошибку 406?

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

  • Ознакомьтесь с правилами безопасности:
    • Проверьте и просмотрите правила безопасности, реализованные на вашем сервере. Убедитесь, что они настроены надежно, но не слишком строго.
    • Если возможно, настройте правила безопасности, чтобы разрешить необходимые и законные запросы.
  • Обновите плагины и темы:
    • Поддерживайте актуальность своих плагинов и тем. Разработчики часто выпускают обновления для устранения ошибок и улучшения совместимости, снижая вероятность конфликтов, приводящих к ошибкам 406.
  • Мониторинг журналов сервера:
    • Регулярно проверяйте журналы сервера на наличие необычных действий или сообщений об ошибках. Решайте любые проблемы незамедлительно, чтобы они не переросли в ошибку 406.
  • Изменения теста:
    • Прежде чем вносить существенные изменения, например добавлять новые плагины или темы, протестируйте их в промежуточной среде. Это позволяет выявлять и разрешать потенциальные конфликты до того, как они повлияют на работающий сайт. Также не модифицируйте и не вносите изменения в основные файлы WordPress, если в этом нет крайней необходимости.
  • Устанавливайте только доверенные плагины или темы:
    • Всегда старайтесь устанавливать авторитетный и надежный плагин, темы или расширения только в случае необходимости.
  • Очистка базы данных:
    • Время от времени всегда очищайте или оптимизируйте свою базу данных, удаляя ненужные файлы и следы удаленных плагинов.
  • Периодически внедряйте отладку:
    • Сделайте регулярной периодическую отладку вашего сервера. Это сделает ваш сервер более удобным и удобным для посетителей.
  • Проконсультируйтесь с хостинг-провайдером:
    • Если ваш веб-сайт размещен на хостинге, обратитесь за помощью к своему хостинг-провайдеру. Они могут выявить проблемы на стороне сервера или помочь вам оптимизировать настройки сервера, чтобы избежать ошибок 406.
  • Используйте сеть доставки контента (CDN):
    • Внедрение CDN может помочь эффективно распределять контент вашего веб-сайта и снизить вероятность ошибок, связанных с сервером, включая ошибки 406.
  • Регулярное резервное копирование:
    • Регулярно создавайте резервную копию вашего сайта. В случае возникновения ошибки наличие недавней резервной копии позволит вам быстро восстановить работоспособность вашего веб-сайта.

Заключение

Как и любую ошибку HTTP, вы можете исправить ошибку 406 Not Acceptable. Однако первоначальный шаг, который вам необходимо сделать, — это выяснить причину, вызвавшую это.

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

Если у вас есть какие-либо предложения или вопросы относительно этой ошибки 406, сообщите нам об этом в разделе комментариев ниже.


Часто задаваемые вопросы

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

Вы можете легко исправить ошибку 406, выполнив следующие методы устранения неполадок:
1. Проверьте правильность введенного URL или нет.
2. Сбросьте и настройте свою сеть и устройства.
3. Откатите недавние обновления WordPress.
4. Удалите недавно добавленные расширения, плагины или темы.
5. Найдите изменения в записях базы данных.
6. Проверьте журналы сервера
7. Проверьте конфигурацию веб-сервера.
8. Отладка WordPress
9. Проверьте правила безопасности сервера.

Что означает 406?

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

В чем разница между HTTP 404 и 406?

HTTP 404 Not Found Указывает, что серверу не удалось найти запрошенный ресурс, часто из-за отсутствия веб-страницы или неправильного URL-адреса. Принимая во внимание, что HTTP 406 Not Acceptable указывает, что сервер не может предоставить ответ, соответствующий критериям, указанным в заголовках запроса, таким как типы контента или языки. Это происходит, когда сервер не может удовлетворить указанные требования клиента.