Ошибка 400 Bad Request на сайте

Ошибка 400 значит, что сервер получил запрос, но не смог его разобрать: мешают слишком большие cookie, неверный адрес или запрос формы в неправильном формате. Посетителю обычно помогает очистить cookie сайта, владельцу — выяснить, у кого и на каких страницах возникает ошибка.

Обновлено 30 октября 2026

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

Если вы посетитель сайта

  1. Очистите cookie только этого сайта: в настройках браузера найдите сайт в списке и удалите его данные. Остальные сайты трогать не нужно.
  2. Проверьте адрес: лишний символ %, пробел или обрезанная ссылка из письма тоже дают 400.
  3. Откройте сайт в другом браузере или в режиме инкогнито. Если там открылся, причина в cookie или расширениях вашего браузера.

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

Шаг 1. Выясните, у кого возникает ошибка

От ответа зависит, где искать.

  • Только у части посетителей, а в режиме инкогнито всё работает. Почти всегда причина в размере cookie или заголовков запроса. Сайт или подключённые счётчики записывают в cookie слишком много данных, и запрос превышает лимит веб-сервера. В nginx это лимит large_client_header_buffers (по умолчанию 8 КБ на одну строку заголовка), в Apache — LimitRequestFieldSize. Текст ошибки подсказывает: «Request Header Or Cookie Too Large» или «Size of a request header field exceeds server limit». Найдите, какой скрипт раздувает cookie, а лимит повышайте только после этого.
  • У всех и на одной странице или ссылке. Проверьте сам адрес: неправильно закодированные символы, обрезанные параметры, двойной слеш в правилах переадресации.
  • У всех и на всём сайте. Смотрите конфигурацию веб-сервера и CDN. Типичный случай после переноса — сообщение «The plain HTTP request was sent to HTTPS port»: запрос по HTTP пришёл на порт, который ждёт HTTPS. Это ошибка в настройке сервера или прокси, а не в коде сайта.

Не хотите разбираться сами? Пришлём оценку в часах до начала работы, первая задача до 2 часов бесплатно.

Отправить задачу

Шаг 2. Проверьте формы и загрузку файлов

Если 400 появляется при отправке формы, проверьте, что именно отправляется.

  • Слишком большой файл обычно даёт не 400, а 413 Request Entity Too Large. Лимит задаётся client_max_body_size в nginx (по умолчанию 1 МБ) и LimitRequestBody в Apache. Если в ответе 413, увеличьте лимит под реальный размер файлов и предупредите об ограничении в самой форме.
  • 400 на форме часто означает, что истёк или не передан токен защиты формы: страница была открыта долго, или кеш отдал её с чужим токеном. Страницы с формами нельзя целиком кешировать для всех посетителей.
  • Плагин или модуль формы может сам отвечать 400 на неверно заполненное поле. Тогда в ответе будет его сообщение, а не страница веб-сервера.

Шаг 3. Проверьте интеграции и API

Если ошибка появляется при оплате, отправке заказа в CRM или обмене с 1С, 400 обычно возвращает не ваш сайт, а внешний сервис: он получил запрос в неверном формате. Причины: изменились обязательные поля после обновления модуля, неверная сумма или валюта, пустой параметр, устаревший ключ API. Ответ сервиса с текстом ошибки записывается в журнал модуля оплаты или интеграции. Без этого текста искать причину вслепую. Про сбои оплаты подробнее: магазин не принимает оплату.

Шаг 4. Посмотрите журналы

В журнале доступа веб-сервера найдите запросы с кодом 400 и посмотрите, какие адреса и в какое время. В журнале ошибок nginx рядом с ними обычно написана причина. Если 400 отдаёт CDN, событие видно в его панели. Если приложение, — в журнале CMS или модуля.

Когда нужен специалист

  • Ошибка возникает у части клиентов, и непонятно, какой скрипт раздувает cookie.
  • 400 возвращает платёжный сервис или CRM, а журнал модуля пустой.
  • После переноса сайта ошибка у всех, а доступа к настройкам сервера нет.

Сколько стоит решение у нас

ЗадачаВремяСтоимость
Исправление ошибки1–2 ч3 800–7 600 ₽
Диагностика и восстановлениеоколо 2 ч7 600 ₽
Простая интеграция с CRM или APIот 4 чот 15 200 ₽

Диапазоны ориентировочные, ставка 3 800 ₽ в час. Точную оценку присылаем до начала работ. Все цены.

Не хотите разбираться сами?

Опишите проблему в форме. Пришлём оценку в часах до начала работы, первая задача до 2 часов бесплатно для новых клиентов.

Отправить задачу

Частые вопросы

Сколько стоит исправить ошибку 400?

Исправление ошибки обычно занимает 1–2 ч — это 3 800–7 600 ₽ по ставке 3 800 ₽ в час. Оценку присылаем до начала работы, а для новых клиентов первая задача до 2 часов бесплатно.

Чем 400 отличается от 403 и 404?

400 — сервер не понял запрос. 403 — понял, но не пускает: подробнее в разборе ошибки 403. 404 — понял, но такой страницы нет. Сводная таблица кодов — на странице HTTP-ошибки.

Опасно ли просто увеличить лимит заголовков на сервере?

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