underscores_in_headers
Директива `underscores_in_headers` позволяет использовать символы подчеркивания в именах HTTP-заголовков. — NGINX HTTP Core
Описание
По умолчанию NGINX не разрешает использование подчеркиваний в именах HTTP-заголовков по соображениям безопасности, в частности чтобы избежать возможных конфликтов, связанных с поведением парсинга заголовков. Директива `underscores_in_headers` изменяет это ограничение. Она может быть установлена в 'on' или 'off', где 'on' разрешает использование подчеркиваний в именах заголовков. Это особенно полезно при работе с конкретными API или клиентами, которые зависят от наличия подчеркиваний в именах заголовков. Эту директиву можно использовать в контекстах `http` или `server`, что позволяет задавать глобальную или специфичную для сервера конфигурацию. Когда она включена, она применяется ко всем заголовкам, обрабатываемым NGINX, влияя как на входящие заголовки запросов, так и на исходящие заголовки ответов.
Пример конфига
http {
underscores_in_headers on;
server {
location / {
# server configuration
}
}
}Включение поддержки подчеркиваний в заголовках может подвергнуть ваше приложение потенциальным проблемам с некоторыми прокси или клиентами, которые некорректно обрабатывают такие заголовки.
Убедитесь, что функциональность, зависящая от подчеркиваний, тщательно протестирована после изменения конфигурации.