Ошибка 400 bad request nginx означает, что сделан неверный запрос. Если речь идет о запросах к базе данных или API — причина может быть в работе бэкенда. Например, недостаточное количество знаков в поле БД.
В случае если ошибка возникает при обращении к главной странице сайта — причина обычно в Nginx и размерах буферов.
Ошибка 400 bad request nginx
Объем заголовков в запросе может быть различным. Если он велик и лимит, установленный в конфигурации, не позволяет их обработать — возникнет ошибка.
Ошибка исправляется добавлением в секцию http конфигурационного файла nginx.conf следующей директивы:
large_client_header_buffers 2 12k;
Затем перечитывается конфигурация веб-сервера
nginx -s reload
Дополнительно можно проверить логи Nginx
less /var/log/nginx/error.log
Если ошибка возникает периодически — в логе доступа можно найти при помощи grep все случаи получения ответа 400, затем сопоставить данные с записями в error.log.
В access.log будут запросы, которые выполнялись при обращении к сайту.
Также есть другие буферы Nginx, на которые стоит обратить внимание. Особенно если сервер обслуживет нагруженный проект.