ajp_pass_header
`ajp_pass_header` 指令指定应从 AJP 服务器传递到客户端的 HTTP 响应头。
Support AJP protocol proxy with NGINX
·
httpserverlocation
语法ajp_pass_header header_name | all;
默认值none
上下文http, server, location
参数flag
说明
ajp_pass_header 指令用于将 NGINX 作为反向代理连接到支持 AJP 的服务器(通常是 Apache Tomcat)时。通过使用此指令,您可以控制哪些来自 AJP 响应的特定头会被转发到客户端。这在希望在不向客户端发送不必要数据的情况下管理某些头的流动,或确保为了应用程序特定需求某些头被传递时非常有用。该指令接受单个参数,该参数可以是要转发的特定头名称,也可以是特殊标志 'all',表示允许转发所有头。
在实际使用中,配置后 ajp_pass_header 会读取上游 AJP 服务器的响应并根据您用该指令定义的内容有选择地转发指定的头。由于它可以在 http、server 或 location 上下文中定义,因此可以根据 NGINX 配置的路由结构对头管理进行广泛或细粒度的控制。这种灵活性确保不同部分的 Web 应用可以根据需要定制其响应行为,而不会影响应用的其他区域。
配置示例
location / {
ajp_pass tomcats;
ajp_pass_header Set-Cookie;
ajp_pass_header Content-Type;
}⚠
确保头部名称的拼写和大小写与 AJP 响应中出现的一致。
⚠
在不了解影响的情况下使用 'all' 可能会向客户端暴露敏感或不必要的信息。