Главная » Error » Что такое ошибка 400 Bad Request: как ее исправить

Что такое ошибка 400 Bad Request: как ее исправить

На стороне сервера или на стороне клиента?

Все коды ответа HTTP из категории 4xx считаются ошибками на стороне клиента. Несмотря на это, появление ошибки 4xx не обязательно означает, что проблема как-то связана с клиентом, под которым понимается веб-браузер или устройство, используемое для доступа к приложению. Зачастую, если вы пытаетесь диагностировать проблему со своим приложением, можно сразу игнорировать большую часть клиентского кода и компонентов, таких как HTML, каскадные таблицы стилей (CSS), клиентский код JavaScript и т.п. Это также применимо не только к сайтам. Многие приложения для смартфонов, которые имеют современный пользовательский интерфейс, представляют собой веб-приложения.

С другой стороны, ошибка 400 Bad Request означает, что запрос, присланный клиентом, был неверным по той или иной причине. Пользовательский клиент может попытаться загрузить слишком большой файл, запрос может быть неверно сформирован, заголовки HTTP запроса могут быть неверными и так далее.

Мы рассмотрим некоторые из этих сценариев (и потенциальные решения) ниже. Но имейте в виду: мы не можем однозначно исключить ни клиент, ни сервер в качестве источника проблемы. В этих случаях сервер является сетевым объектом, генерирующим ошибку 400 Bad Request и возвращающим её как код ответа HTTP клиенту, но возможно именно клиент ответственен за возникновение проблемы.

Начните с тщательного резервного копирования приложения

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

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

Провайдеры с виртуальным выделенным сервером (VPS)

RankХостингКлиентыОценкаОтзывы
1

Fornex.com

1100005.0 ★212
2

REG.RU

22000004.8 ★360
3

Sprintbox.ru

4.6 ★14

Смотреть весь рейтинг

Диагностика ошибки 400 Bad Request

Ошибка 400 Bad Request означает, что сервер (удалённый компьютер) не может обработать запрос, отправленный клиентом (браузером), вследствие проблемы, которая трактуется сервером как проблема на стороне клиента.

Существует множество сценариев, в которых ошибка 400 Bad Request может появляться в приложении. Ниже представлены некоторые наиболее вероятные случаи:

  • Клиент случайно (или намеренно) отправляет информацию, перехватываемую маршрутизатором ложных запросов. Некоторые веб-приложения ищут особые заголовки HTTP, чтобы обрабатывать запросы и удостовериться в том, что клиент не предпринимает ничего зловредного. Если ожидаемый заголовок HTTP не найден или неверен, то ошибка 400 Bad Request – возможный результат.
  • Клиент может загружать слишком большой файл. Большинство серверов или приложений имеют лимит на размер загружаемого файла, Это предотвращает засорение канала и других ресурсов сервера. Во многих случаях сервер выдаст ошибку 400 Bad Request, когда файл слишком большой и поэтому запрос не может быть выполнен.
  • Клиент запрашивает неверный URL. Если клиент посылает запрос к неверному URL (неверно составленному), это может привести к возникновению ошибки 400 Bad Request.
  • Клиент использует недействительные или устаревшие куки. Это возможно, так как локальные куки в браузере являются идентификатором сессии. Если токен конкретной сессии совпадает с токеном запроса от другого клиента, то сервер/приложение может интерпретировать это как злонамеренный акт и выдать код ошибки 400 Bad Request.

Для владельцев сайтов

Владельцу сайта следует знать, что, скорее всего, такую ошибку видит только он, а остальные пользователи видят сайт в нормальном состоянии. Поэтому в первую очередь следует проверить открывается ли сайт с другого компьютера. Если проблема замечена и на других компьютерах, то пишите в техническую поддержку хостинга, т.к. это тот случай (1%), когда проблема кроется в работе сервера.

Марина Долгова
Редактор материала •
Марина Долгова

Хостинг-эксперт (опыт работы 6 лет)
Основная специализация – работа с клиентами, модерация отзывов и вопросов, составление и актуализация рейтингов. Отвечает за англоязычную версию сайта. Девиз по жизни: “Путешествие в тысячу миль начинается с первого шага”.

Проверка на вирусы

Вирусы на устройстве могут нарушать связь с сайтами. Отсканируйте систему антивирусной программой. Когда вирус будет найден, удалите его и перезагрузите устройство. Если вируса нет, попробуйте другой способ.

Исправление проблем на стороне клиента

Устранение ошибки 400 Bad Request (попробуйте позже) лучше начать с исправления на стороне клиента. Вот несколько советов, что следует попробовать в браузере или на устройстве, которые выдают ошибку.

Проверьте запрошенный URL

Как исправить ошибку ERR SSL VERSION OR CIPHER MISMATCH

Наиболее частой причиной ошибки 400 Bad Request является банальный ввод некорректного URL. Доменные имена (например, internet-technologies.ru) нечувствительны к регистру, поэтому ссылка, написанная в смешанном регистре, такая как interNET-technologies.RU работает так же, как и нормальная версия в нижнем регистре internet-technologies.ru. Но части URL, которые расположены после доменного имени, чувствительными к регистру. Кроме случаев, когда приложение/сервер специально осуществляет предварительную обработку всех URL и переводит их в нижний регистр перед исполнением запроса.

Важно проверять URL на неподходящие специальные символы, которых в нем не должно быть. Если сервер получает некорректный URL, он выдаст ответ в виде ошибки 400 Bad Request.

Очистите соответствующие куки

Одной из потенциальных причин возникновения ошибки 400 Bad Request являются некорректные или дублирующие локальные куки. Файлы куки в HTTP – это небольшие фрагменты данных, хранящиеся на локальном устройстве, которые используются сайтами и веб-приложениями для «запоминания» конкретного браузера или устройства. Большинство современных веб-приложений использует куки для хранения данных, специфичных для браузера или пользователя, идентифицируя клиента и позволяя делать следующие визиты быстрее и проще.

Но куки, хранящие информацию сессии о вашем аккаунте или устройстве, могут конфликтовать с другим токеном сессии от другого пользователя, выдавая кому-то из вас (или вам обоим) ошибку 400 Bad Request.

В большинстве случаев достаточно рассматривать только ваше приложение в отношении файлов куки, которые относятся к сайту или веб-приложению, выдающему ошибку 400 Bad Request.

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

Это можно сделать разными способами в зависимости от браузера, который вы используете:

  • Google Chrome;
  • Internet Explorer;
  • Microsoft Edge;
  • Mozilla Firefox;
  • Safari.

Загрузка файла меньшего размера

Как правильно осуществить редирект с HTTP на HTTPS?

Если вы получаете ошибку 400 Bad Request при загрузке какого-либо файла, попробуйте корректность работы на меньшем по размеру файле, Это включает в себя и «загрузки» файлов, которые не загружаются с вашего локального компьютера. Даже файлы, отправленные с других компьютеров, считаются «загрузками» с точки зрения веб-сервера, на котором работает ваше приложение.

Выйдите и войдите

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

Также приложение может столкнуться с проблемой, связанной с вашей предыдущей сессией, являющейся лишь строкой, которую сервер посылает клиенту, чтобы идентифицировать клиента при будущих запросах. Как и в случае с другими данными, токен сессии (или строка сессии) хранится локально на вашем устройстве в файлах куки и передаётся клиентом на сервер при каждом запросе. Если сервер решает, что токен сессии некорректен или скомпрометирован, вы можете получить ошибку 400 Bad Request.

В большинстве веб-приложений выход повторный вход приводит к перегенерации локального токена сессии.

Как исправить ошибку 400 Bad Request 

Со стороны пользователя

Так как в 99% случаев причина ошибки связана с клиентом или локальным ПК и ПО на нем (например, браузер или антивирус), то поиском и устранением проблемы нужно заниматься именно в этом направлении. 

Проверьте адрес сайта

Перепроверьте правильность URL-страницы, на которую хотите перейти. Вы могли неверно указать тот или иной знак верхнего регистра в запросе. 

Очистите кэш браузера и cookies-файлы

Сайт использует куки-файлы для хранения информации о пользователе в его же браузере. При переходе на сайт куки-файлы сравниваются с информацией о посетителе, которая уже есть на сервере, и в этот момент может возникнуть конфликт. Для очистки кэша и куки-файлов, например, в браузере Chrome перейдите в его “Настройки” – “Конфиденциальность и безопасность” – “Файлы cookie и другие данные” – “Удалить все”:

Очистка кэша и куки-файлов в браузере Chrome

Проверьте размер загружаемого файла

Если при загрузке файла на сайт вы встретили 400 Bad Request, то, скорее всего, сработал лимит на объем загружаемого файла. Обратитесь в техподдержку для увеличения лимита или получения подробной информации по этому вопросу.

Смените браузер, устройство или интернет-провайдера

1. Если проблема в браузере, то есть два способа решить проблему:

  • переустановить текущий браузер.
  • открыть сайт в другом браузере.

2. Попробуйте открыть сайт на ином устройстве.
3. Также можно попробовать сменить интернет-провайдера, например, переключившись на мобильный интернет.

Устраните проблемы, связанные с антивирусом и/или брандмауэром

  1. Часто 400 Bad Request может возникнуть из-за локального антивируса или брандмауэра. Попробуйте отключить их и проверить  работу сайта.
  2. Выполните сканирование локального ПК и файлов сайта на наличие угроз и уязвимостей. Ошибка может быть вызвана вредоносным ПО или вирусом.
  3. Очистите локальный DNS-кэш. Для этого на ПК с ОС Windows откройте командную строку:

Открытие командной строки на ПК с ОС Windows

Затем выполните команду:

ipconfig /flushdns:

Команда ipconfig /flushdns

Со стороны сервера (Проблемы у интернет-провайдера)

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

Если в качестве веб-сервера установлен Nginx, то мы можем увидеть ошибку 400 bad request nginx. В случае, если ошибка возникает при обращении к главной странице сайта, то причина обычно кроется в объеме заголовка запроса. Если он велик, и лимит, установленный в конфигурации, не позволяет их обработать, то возникнет ошибка.

Ошибка исправляется добавлением в секцию http конфигурационного файла nginx.conf (часто файл расположен по пути /etc/nginx/nginx.conf) следующей директивы:

large_client_хедер_buffers 2 12k;

Перезагрузите nginx:

service nginx reload

Проверьте логи на наличие ошибок с кодом 400:

less /var/log/nginx/error.log

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

Провайдеры с виртуальным хостингом

RankХостингКлиентыОценкаОтзывы
1

Fornex.com

1100005.0 ★212
2

RU-CENTER (nic.ru)

9000005.0 ★149
3

AdminVPS.ru

210004.9 ★132

Смотреть весь рейтинг

Очистите кэш DNS

DNS-кэш — это временная база данных вашего компьютера, которая хранит IP-адреса часто посещаемых веб-сайтов. Такая база данных ускоряет связь с сервером.

Вы можете изменить DNS, однако данные из кэша отправляют на старый IP-адрес. После очистки браузер начнёт обращаться к новому IP-адресу. Чаще всего проблема несоответствия DNS приводит к ошибке 502, но также может появиться ошибка 400.

В зависимости от вашей операционной системы очистите кэш по одной из инструкций.

ОС Windows Linux macOS

  1. 1.

    Откройте командную строку. Для этого введите в поисковую строку «Командная строка» и выберите появившееся приложение:

    Как решить ошибку 404 2

  2. 2.

    Введите команду:

    ipconfig /flushdns

  3. 3.

    Дождитесь сообщения об очистке кэша:

    =932x270

  1. 1.Откройте терминал клавишами Ctrl+Alt+T.
  2. 2.

    Введите команду:

    Для Ubuntu:

    sudo service network-manager restart

    Для других дистрибутивов:

    sudo /etc/init.d/nscd restart

  1. 1.Войдите в терминал. Для этого нажмите клавиши Command + Space. Введите Терминал и нажмите на найденное приложение.
  2. 2.

    Введите команду:

    sudo killall -HUP mDNSResponder

Готово, вы очистили кэш DNS. Попробуйте заново зайти на сайт.

Обновите драйверы сетевых устройств

Устаревшее ПО на сетевых устройствах может генерировать неверные запросы. Установите новые драйверы для сетевого соединения.

Причины появления ошибки 400

  1. Ссылка на страницу была некорректной. Если в ссылке была допущена опечатка, сайт, как правило, выдаёт ошибку 404: «Страница не найдена». Опечатку в запросе может сделать сам пользователь, который вводит URL-адрес вручную, а также владелец сайта, который размещает ссылку на странице.
  2. Используются устаревшие файлы cookies.
  3. Пользователь загружает на сайт слишком большой файл.
  4. Антивирус или брандмауэр блокирует сайт.
  5. На компьютере есть вирус, который блокирует доступ к сайту.
  6. Проблемы на стороне интернет-провайдера.

Уменьшите размер файла

Несмотря на то что ошибки 4xx в основном вызваны проблемами на устройстве пользователя, бывают случаи, когда ошибка связана с сервером. 400 ошибка сервера возникает, когда пользователь загружает слишком большой файл на ресурс.

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

Отладка на распространённых платформах

Если вы используете на сервере распространённые пакеты программ, которые выдают ошибку 400 Bad Request, изучите стабильность и функциональность этих платформ. Наиболее распространённые системы управления контентом, такие как WordPress, Joomla! и Drupal, хорошо протестированы в своих базовых версиях. Но как только вы начинаете изменять используемые ими расширения PHP, очень легко спровоцировать непредвиденные проблемы, которые выльются в ошибку 400 Bad Request.

Откатите последние изменения

Если вы обновили систему управления контентом непосредственно перед появлением ошибки 400 Bad Request, рассмотрите возможность отката к предыдущей версии, которая была установлена, как самый быстрый и простой способ убрать ошибку 400 bad request.

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

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

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

Что такое кэширование сайта и почему это важно

В зависимости от конкретной CMS, которую использует приложение, имена этих компонентов будут различаться. Но во всех системах они служат одной и той же цели: улучшение возможностей платформы относительно её стандартной функциональности.

При этом имейте в виду, что расширения могут так или иначе получать полный контроль над системой, вносить изменения в код PHP, HTML, CSS, JavaScript или базу данных. Поэтому мудрым решением может быть удаление любых новых расширений, которые были недавно добавлены.

Очистите файлы cookies и кэш браузера

Файлы куки и кэш созданы для того, чтобы запоминать сайты и персональные данные пользователя. За счёт этой памяти ускоряется процесс повторной загрузки страницы. Но cookies и кэш, которые хранят данные предыдущей сессии, могут конфликтовать с другим токеном сессии. Это приведёт к ошибке 400 Bad Request.

Очистите кэш браузера по инструкции и попробуйте зайти на страницу заново.

Очистить кэш и куки можно не только вручную, но и с помощью программ CCleaner и Advanced SystemCare.

CCleaner ― эффективное решение для оптимизации работы системы. За пару кликов можно очистить кэш и cookies в нескольких браузерах одновременно. Также можно быстро почистить все временные файлы, которые могут замедлять работу системы. Интуитивный интерфейс не требует специальных знаний:

Как решить ошибку 404 1

Ещё одним популярным приложением для оптимизации ПК является Advanced SystemCare. Эта программа поможет удалить ненужные файлы, очистить реестр, ускорить работу системы, освободить память и место на диске. Также она может контролировать безопасность просмотра веб-страниц, защищая конфиденциальные данные, блокируя вредоносные веб-сайты и предотвращая майнинг криптовалюты.

Измените настройки антивируса и брандмауэра

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

Как отключить брандмауэр на Windows 7/10

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

Чтобы отключить брандмауэр на Windows 7/10:

  1. 1.В левом нижнем углу экрана нажмите на иконку Лупы.
  2. 2.

    Перейдите во вкладку «Приложения» и выберите Панель управления:

    Как решить ошибку 404 4

  3. 3.

    Нажмите на Брандмауэр Защитника Windows:

    Как решить ошибку 404 5

  4. 4.

    В левом меню нажмите на Включение и отключение брандмауэра Защитника Windows:

    Как решить ошибку 404 6

  5. 5.

    В блоках «Параметры для частной сети» и «Параметры для общественной сети» отметьте пункт Отключить брандмауэр Защитника Windows. Нажмите OK:

    Как решить ошибку 404 7

Готово, вы отключили брандмауэр.

Источники

  • https://www.internet-technologies.ru/articles/oshibka-400-bad-request.html
  • https://ru.hostings.info/schools/400-bad-request.html
  • https://help.reg.ru/hc/ru/articles/4408047736593-%D0%9E%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-400-%D1%87%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D0%B8-%D0%BA%D0%B0%D0%BA-%D0%B8%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D1%82%D1%8C
[свернуть]
Решите Вашу проблему!


×
Adblock
detector