400 bad request nginx — как исправить ошибку

Ошибка 400 bad request nginx означает, что сделан неверный запрос. Если речь идет о запросах к базе данных или API — причина может быть в работе бэкенда. Например, недостаточное количество знаков в  поле БД.

В случае если ошибка возникает при обращении к главной странице сайта — причина обычно в Nginx и размерах буферов.

 

 

 

Ошибка 400 bad request nginx

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

 

 

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

 

large_client_header_buffers 2 12k;

 

Затем перезапускается веб-сервер

nginx -s reload

 

 

Обычно получения в браузере 400 bad request nginx достаточно чтобы устранить причины. Однако дополнительно можно проверить логи Nginx

less /var/log/nginx/error.log

 

Если ошибка возникает периодически — в логе доступа можно найти при помощи grep все случаи получения ответа 400, затем сопоставить данные с записями в error.log.

В access.log будут запросы, которые выполнялись при обращении к сайту.

 

 

Также есть другие буферы Nginx, на которые стоит обратить внимание. Особенно если сервер обслуживет нагруженный проект.