add_trailer_inherit

`add_trailer_inherit` 指令配置是否在 NGINX HTTP 服务器上下文中继承来自代理响应的 trailer headers。 — NGINX HTTP Core

add_trailer_inherit
httpserverlocationif in location
语法add_trailer_inherit on | off;
默认值off
上下文http, server, location, if in location
模块NGINX HTTP Core
参数1

说明

`add_trailer_inherit` 指令提供了一种机制,用于配置在代理服务器上下文中如何处理 trailer headers(即在主响应体之后发送的头)。设置后,它允许将这些 trailer headers 从被代理的 upstream 服务器响应继承到发送给客户端的响应中。当处理诸如 chunked 之类的传输编码时,这一点尤其有用,因为在响应结尾需要发送额外的头以向客户端提供必要的元数据。 该指令接受一个参数,值为布尔型:'on' 或 'off'。若设置为 'on',NGINX 将在发送给客户端的响应中包含从 upstream 服务器收到的任何 trailer headers。若设置为 'off',则不会包含这些头。必须认识到,继承 trailer headers 可能会影响客户端的行为,特别是在涉及 HTTP/1.1 chunked 传输的场景中。因此,在使用此指令时应仔细考虑 upstream 服务器的配置和客户端的期望。

配置示例

http {
    server {
        location /example {
            proxy_pass http://upstream_server;
            add_trailer_inherit on;
        }
    }
}

确保上游服务器实际发送 trailer headers;否则,启用此指令不会生效。

过度使用 trailer headers 可能会导致客户端出现意外行为,尤其当客户端不能正确处理它们时。