#Что означает ошибка
Ошибка 400 Bad Request
Ошибка 400 Bad Request означает, что сервер не смог понять запрос: некорректный адрес, повреждённые cookie, слишком большой заголовок или неверные данные формы. Чаще всего проблема на стороне клиента.
Для посетителей помогает очистка cookie, для разработчиков — проверка запроса.
Определите, у вас ли ошибка на всех сайтах.
Ошибка 400 означает, что сервер не понял запрос: повреждённый URL, слишком большие cookie или неверные данные формы. Очистите cookie и проверьте адрес.
#Причины и решения
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Неверный URLАдрес. | Спецсимволы. | Исправьте. |
| Повреждённые cookieCookie. | Ошибка. | Очистите. |
| Слишком большой заголовокCookie. | Ошибка 400. | Очистите. |
| Ошибка формыДанные. | После отправки. | Проверьте. |
#Пошаговое решение
- Проверьте адресЩёлкните адресную строку браузера (
Ctrl+L), внимательно проверьте написание домена и его зону, отсутствие пробелов, лишних точек и похожих символов. При необходимости откройте адрес из официального источника вручную, а не из подозрительного сообщения. Если сайт использует HTTPS, не убирайтеhttps://ради обхода ошибки сертификата. Когда адрес верен, попробуйте открыть главную страницу того же домена, чтобы отличить ошибку ссылки от общей недоступности. - Очистите cookie сайтаОткройте нужный браузер и нажмите Ctrl+Shift+Delete. Выберите временной диапазон и пункт «Кэшированные изображения и файлы»; cookies удаляйте только при необходимости, так как это может завершить вход на сайты. Нажмите «Удалить данные», затем заново откройте проблемную страницу.
- Попробуйте режим инкогнитоВ Chrome/Edge нажмите
Ctrl+Shift+N(в FirefoxCtrl+Shift+P) и откройте тот же URL в приватном окне. Если проблема исчезла, проверьте расширения и cookie обычного профиля; если сохранилась, вероятнее ошибка сайта, сети или разрешений. Приватное окно не отключает все средства безопасности и не гарантирует отсутствие расширений, которым разрешена работа в этом режиме. - Проверьте запрос через curlДля администратора: откройте терминал на компьютере с установленным curl и выполните
curl -I https://example.com/, заменив пример на проблемный адрес. Посмотрите код HTTP и заголовкиLocation(перенаправление) илиRetry-After(время повторной попытки), если они есть. Не отправляйте запрос с данными авторизации в публичный сервис. Если ответ отличается от браузера, проверьте кеш и промежуточный прокси; curl не исправляет ошибку сам по себе. - Увеличьте буферы заголовковЭто операция администратора и нужна только если в журнале nginx явно обнаружены превышение размера заголовка запроса либо похожие диагностические сообщения. Сначала проверьте, не разрастаются ли cookie, и найдите точную причину ошибки 400. При необходимости сохраните копию конфигурации, скорректируйте только соответствующий параметр на своём сервере по документации установленной версии, выполните
nginx -tи лишь затем перезагрузите конфигурацию. Посетителю сайта ничего менять в nginx не нужно.
#Для посетителя
Проверьте адрес на опечатки и спецсимволы. Очистите cookie и кэш для сайта. Откройте в режиме инкогнито. Отключите расширения. Если ошибка «Request Header Or Cookie Too Large», удалите cookie сайта. Проверьте размер загружаемого файла.
#Для разработчика
Проверьте запрос: curl -v URL. Частые причины: невалидный JSON (Content-Type: application/json), неверный Host, слишком длинный URL (>8 КБ), большие заголовки (large_client_header_buffers 4 16k; в nginx), неправильная кодировка параметров. Журналы nginx/Apache укажут причину.
#CDN и прокси
Проверьте правила WAF, ограничения Cloudflare. Если 400 появляется только за прокси, проверьте передачу заголовков (proxy_set_header Host $host;). Для API убедитесь в правильности метода и тела запроса.
curl -v https://example.com/pathcurl -I -H "Cookie: test=1" https://example.com#Как проверить результат
Повторите запрос после исправлений: страница должна открыться с кодом 200, который виден в curl -I или во вкладке «Сеть» (F12) браузера. Если ошибка осталась только у некоторых пользователей, причина в их cookie или в расширении, ограничивающем заголовки. Для администраторов полезно включить в логе nginx поле $http_cookie длины и сопоставить с large_client_header_buffers: рост cookie из-за аналитики и рекламных скриптов часто приводит к 400 при превышении лимита.