ignore_invalid_headers

Директива `ignore_invalid_headers` управляет тем, будет ли NGINX игнорировать недопустимые заголовки в HTTP-запросах. — NGINX HTTP Core

ignore_invalid_headers
httpserver
Синтаксисignore_invalid_headers on | off;
По умолчаниюoff
Контекстhttp, server
МодульNGINX HTTP Core
Аргументыflag

Описание

Директива `ignore_invalid_headers` — это параметр конфигурации в NGINX, который позволяет администраторам управлять тем, как сервер обрабатывает недопустимые HTTP‑заголовки, полученные в запросах. Когда значение установлено в 'on', NGINX будет игнорировать любые недопустимые заголовки вместо того, чтобы сразу отклонять запрос. Это может быть полезно в сценариях, когда клиент может отправлять повреждённые заголовки, не соответствующие спецификациям HTTP, что позволяет лучше восстановиться после таких ошибок без отбрасывания всего запроса. Директива принимает флаговый аргумент, либо 'on', либо 'off'. Если установлено 'on', сервер будет обрабатывать запрос нормально, даже если он содержит недопустимые заголовки. Напротив, при значении 'off', которое является поведением по умолчанию, сервер будет отклонять запрос и возвращать ответ с ошибкой при встрече недопустимых заголовков. Эта настройка применима как в блоке HTTP, так и в контекстах `server`, что даёт гибкость в том, как отдельные экземпляры `server` могут обрабатывать запросы с потенциально проблемными заголовками.

Пример конфига

http {
    ignore_invalid_headers on;

    server {
        listen 80;
        location / {
            proxy_pass http://backend;
        }
    }
}

Установка этой директивы в положение 'on' может привести к потенциальным рискам безопасности, если invalid headers могут быть злоумышленно созданы для эксплуатации уязвимостей приложения.

Всегда тщательно тестируйте приложение при изменении этого параметра, поскольку игнорирование invalid headers может привести к непредвиденному поведению или ошибкам приложения.