ajp_pass_header

Директива `ajp_pass_header` задаёт, какие HTTP заголовки ответа должны передаваться от AJP-сервера клиенту.

Синтаксисajp_pass_header header_name | all;
По умолчаниюnone
Контекстhttp, server, location
Аргументыflag

Описание

Директива ajp_pass_header используется при подключении NGINX в качестве обратного прокси к серверам, поддерживающим AJP, как правило в средах, таких как Apache Tomcat. С помощью этой директивы вы можете контролировать, какие конкретные заголовки из ответа AJP будут пересылаться клиенту. Это важно, когда нужно управлять передачей определённых заголовков, чтобы не перегружать клиента лишними данными, либо чтобы гарантировать передачу определённых заголовков в соответствии с требованиями приложения. Директива принимает один параметр: это либо конкретное имя заголовка для пересылки, либо специальный флаг 'all', позволяющий пересылать все заголовки.

На практике, при настройке ajp_pass_header чтение ответа от upstream AJP-сервера производится выборочно, и указанные заголовки пересылаются в соответствии с тем, что задано в директиве. Поскольку директива может определяться в контекстах http, server или location, она обеспечивает широкий или детализированный контроль над управлением заголовками в зависимости от структуры маршрутизации конфигурации NGINX. Эта гибкость позволяет разным частям веб-приложения настраивать поведение ответов в соответствии со своими потребностями, не влияя на другие части приложения.

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

location / {  
    ajp_pass tomcats;  
    ajp_pass_header Set-Cookie;  
    ajp_pass_header Content-Type;  
}

Убедитесь, что имена заголовков написаны правильно и с учётом регистра, как они указаны в ответе AJP.

Использование 'all' без понимания последствий может раскрыть клиентам чувствительную или ненужную информацию.

← Ко всем директивам