Ошибка 400 Bad request (от англ. «Плохой запрос») — это ответ сервера, который возникает при отправке ему неправильного запроса. Категория 400 свидетельствует о том, что сбой находится на пользовательской стороне. Простыми словами, ошибка 400 — это сбой на стороне клиента (например, браузера), который не дает открыть страницу с контентом или затрудняет его просмотр.
Чаще всего причина в некорректном синтаксисе запроса. Несмотря на название «Bad request», существует ряд других «незапросных» факторов, которые также могут стать триггером этого сбоя. Программные сбои, недействительные куки, некорректные редиректы — лишь некоторые из них. Подробнее расскажем ниже.
Перед тем, как мы начнем, важно прояснить некоторые понятия:
- Сервер — удаленный компьютер, на котором хранится сайт.
- Клиент — программа, которая обращается к серверу через отправку запросов при помощи конкретного протокола, например, браузер.
Причины появления ошибки 400
- Пользователь допустил опечатку в URL. Ошибка в синтаксисе ссылки — наиболее частый сценарий ее появления.
- Блокировка домена или конкретной страницы сайтов. Заблокировать доступ может не только антивирусное ПО, но и брандмауэры, защитные экраны, расширения браузера и даже само оборудование сети, если оно было предварительно настроено соответствующим образом. Кроме того, причиной блокировки конкретного сайта могут служить настройки ОС.
- Некорректные или устаревшие драйверы сетевого оборудования. Такое программное обеспечение способно формировать неправильные запросы к серверу. В результате страница сайта отдает 400-ю ошибку. Драйверы для всех сетевых устройств должны быть актуальными и обновляться сразу, как появится такая возможность.
- Программные сбои, вывод из строя сетевого оборудования. Если перестали загружаться вообще все сайты, это может быть как раз такой случай.
- Неактуальные cookies. Использование браузером недействительных кук может трактоваться сервером как попытка фишинга, поэтому устаревшие cookies запрещены и доступ к сайту автоматически ограничивается.
- Посетитель пытается загрузить на сайт файл слишком большого размера. Известно о таком сценарии появления — например, на портале «Госуслуги» при попытке загрузить заявление или фотографию.
- Вебмастер сделал некорректный редирект на странице и теперь она не открывается у всех посетителей.
- Накопление некорректных данных в DNS-кэше Windows. В результате страница ранее посещенного сайта может отдавать некорректный код состояния HTTP.
- Вредоносный код в системе. Заражение может произойти при посещении сомнительных сайтов, использовании чужих флешек, установки взломанных программ.
- Сбой на стороне сервера. Один из редких сценариев, но иногда встречающийся.
Как исправить ошибку 400 пользователю
Теперь переходим к исправлению Bad request и для каждой указанной причины дадим решение.
Пользователь допустил опечатку в URL
Внимательно проверьте введенный адрес. Допустить опечатку при ручном вводе очень просто, так как URL содержит большое количество символов. Лучше копировать и вставлять ссылку автоматически, при помощи одновременного сочетания клавиш Control + C / Control + V.
Вредоносный код в системе
Проверьте систему надежным антивирусным ПО, например, продуктами «Лаборатории Касперского» или антивирусом Dr.Web. Если в системе найден вредоносный код, то его необходимо удалить как можно скорее.
Блокировка домена или конкретной страницы сайта
Откройте установленный антивирус и отключите всю защиту. Таким же образом отключите межсетевые экраны и защиту в реальном времени. Теперь попробуйте открыть проблемную страницу. Если она загрузилась, значит дело было именно в антивирусе или брандмауэре.
Добавьте используемый браузер в список исключений антивируса и настройте защиту программы таким образом, чтобы она не блокировала работу.
Аналогичным образом проверьте и настройте файервол, межсетевой экран, брандмауэр.
Некорректные, устаревшие драйверы сетевого оборудования
Обновите драйверы сетевого оборудования, включая драйверы маршрутизатора и роутера. Все они должны быть обновлены до последней версии. Драйверы нужно скачивать на официальном сайте производителя вашего оборудования.
Программные сбои, вывод из строя сетевого оборудования
Откройте любой другой сайт. Он загружается? Значит, проблема существует только на одном домене и сетевое оборудование работает корректно.
Если же вообще никакие сайты не загружаются, необходимо проверить работоспособность сетевого оборудования. Для этого можно вызвать техника компании-провайдера на дом. Предварительно свяжитесь с поддержкой используемого провайдера и уточните, существуют ли в данный момент сбои на линии.
Неактуальные cookies
При удалении всех кук в браузере вы автоматически выйдете изо всех учетных записей. Для прохождения авторизации на сайтах придется снова вводить пароли и иногда логины.
Очистите cookies и все временные файлы в используемом браузере. Например, в Google Chrome откройте настройки и выполните следующие действия:
- Откройте раздел «Конфиденциальность и безопасность».
- Кликните по строке «Файлы cookie и другие данные сайтов».
- Выберите пункт «Посмотреть все разрешения и данные сайтов».
- Кликните кнопку «Удалить все данные».
- Для подтверждения выбора нажмите «Удалить».
Посетитель пытается загрузить на сайт файл слишком большого размера
Проверьте размер загружаемого файла: при необходимости уменьшите его, например, добавив файл в архив или задействовав компрессию изображения.
Обычно в окне загрузки файла находится примечание о его максимально допустимом размере:
Некорректный редирект
Необходимо проверить выполнение перенаправления при открытии проблемной страницы. Если оно выполняется, вы увидите изменение URL в адресной строке браузера.
Если Ошибка 400 возникает на вашем сайте — удалите некорректный редирект. Если на чужом — напишите администратору или в техподдержку: на крупных сайтах, как правило, это отдельный e-mail.
Накопление некорректных данных в DNS-кэше ОС
Рассмотрим на примере двух операционных систем.
На Windows
Выполните следующие действия:
- Нажмите кнопку «Пуск».
- В поисковой строке укажите cmd.
- Запустите командную строку от имени администратора.
- Введите команду ipconfig/flushdns.
- Подтвердите, нажав клавишу Enter.
Все, DNS кэш успешно очищен.
На macOS
Выполните следующие действия:
- Откройте «Терминал».
- Укажите sudo killall -HUP mDNSResponder; sleep 2;
- Введите админский пароль.
Мы успешно очистили кэш.
Сбой на стороне сервера
Откройте сайт используемого хостинга, пройдите авторизацию и посмотрите уведомления. Если наблюдаются сбои в работе серверов, на главной странице будет соответствующее оповещение.
Свяжитесь с поддержкой хостинга и задайте им вопрос о существующих сбоях на стороне сервера, который используется для размещения вашего сайта.
Как исправить ошибку 400 вебмастеру
В 95 % случаях, как мы уже говорили выше, причина кроется на стороне клиента. Но если вам кажется, что это не так, попробуйте проверить три сценария:
- Глобальные изменения на сайте. Например, обновление версии CMS, установка новой темы, глобальное изменение вида ссылок. Все это способно привести к сбоям на сайте, включая невозможность открыть страницу.
- Плагины. Вспомните, какие именно плагины или расширения вы устанавливали на сайт в последнюю неделю. Важно идентифицировать такие плагины, чтобы отключить их в дальнейшем.
- HTTP-заголовки. Проверьте их корректность. Если они нестандартные, придется изучить требования к ним, чтобы сервер обрабатывал их корректно. Но это довольно редкий случай.
- Используйте отладку в браузере, чтобы обнаружить ошибки непосредственно в скрипте на конкретной странице.
Плагины могут прописывать свой код в базы данных сайта. В некоторых случаях такие операции могут вывести сайт из строя (упрощенно говоря). Вот почему важно делать регулярные бекапы, особенно если вы планируете установку плагинов или внедрение глобальных изменений на сайте. Важно бекапить не только файлы сайта, но и его БД.
Попробуйте отключить плагины, которые вы устанавливали в последнее время, и проверьте, как открывается проблемная страница. Если страница загружается корректно — просто удалите проблемный плагин.
Записи в БД проверять также очень полезно: в них вы можете найти странные или нелогичные указания, например, внедряемые теми же плагинами. Но это работа уже больше для разработчиков и специалистов по серверам, обычный пользователь вряд ли сможет найти подозрительную запись.
Откройте проблемную страницу и запустите программу-отладчик (она еще называется debug) прямо в браузере. Для этого нажмите клавишу F12. В консоли разработчика перейдите на вкладку «Sources» и выполните следующие действия:
- Откройте навигатор. Для этого кликните по иконке:
- Найдите необходимый файл: например, hello.js (2).
- В крайнем правом окне вы увидите панель отладки JavaScript (3).
- Еще раз убедитесь, что выбран корректный файл (1).
- Кликайте по номерам строк, чтобы задать точку остановки (breakpoint):
- Внимательно анализируйте каждую строчку, чтобы обнаружить сбой.
В разработке ПО и отладке точка останова — это преднамеренная пауза в программе, созданная для целей отладки. Его также иногда называют просто паузой.
Бонус: как очистить систему от мусора для профилактики появления Bad Request
Если вы проверили каждый пункт этого руководства, но причина 400 ошибки так и не была найдена, полезно почистить мусор в системе, включая реестр. Для решения этой задачи вы можете использовать утилиту CCleaner.
Шаг 1. Запустите программу, нажмите кнопку «Реестр», отметьте все чекбоксы и нажмите кнопку «Поиск проблем»:
Очищаем реестр утилитой CCleanerУтилита найдет ошибки в реестре.
Шаг 2. Нажмите кнопку «Посмотреть выбранные проблемы». Программа предложит создать резервную копию реестра перед внесением изменений. На всякий случай нажимаем «Да». Теперь нажимаем кнопку «Исправить отмеченные».
Всё — ошибки реестра успешно локализованы!
Теперь откройте раздел «Стандартная очистка». Отметьте чекбоксы компонентов Windows, которые нуждаются в очистке от мусора. Нажмите кнопку «Анализ». Процесс может занимать несколько минут, в зависимости от размера внутреннего хранилища. После того как сканирование системы будет завершено, нажмите кнопку «Очистка».
На вкладке «Приложения» вы можете выбрать конкретные программы, которые нужно очистить от мусора.
Таким образом, мы проверили каждую причину 400 ошибки + очистили систему от мусора, чтобы предотвратить появления иных проблем в ОС.
Комментарии