scgi_ignore_headers
指令 `scgi_ignore_headers` 允许你指定在发送给客户端的响应中应忽略来自 SCGI 服务器的哪些响应头。 — NGINX HTTP Core
scgi_ignore_headers
httpserverlocation
语法scgi_ignore_headers header_name [header_name ...];
默认值none
上下文http, server, location
模块NGINX HTTP Core
参数1+
说明
`scgi_ignore_headers` 指令用于 NGINX 配置中,用来控制来自 SCGI 服务器的某些响应头如何被处理。默认情况下,NGINX 会将 SCGI 响应中的所有头转发给客户端,这有时会导致意外的头暴露或冲突。该指令允许你指定一列应被忽略的头,从而使 NGINX 服务器与客户端之间的通信更加干净和可控。 该指令接受一个或多个头名称作为参数。每个指定的头在通过 NGINX 代理转发给客户端时都会从响应中被省略。这在某些场景下尤其有用,例如当特定头被认为不必要或可能泄露敏感信息时。头名称应以不区分大小写的方式输入,多个头可以用空格分隔。 使用 `scgi_ignore_headers` 指令可以通过确保只有相关的头对客户端可见来提高应用的安全性和性能。但是应注意不要忽略对客户端至关重要的头,例如 `Content-Type` 或可能对客户端处理必需的自定义头。
配置示例
location /app {
scgi_pass 127.0.0.1:9000;
scgi_ignore_headers X-Powered-By X-Server;
}⚠
确保不要忽略对客户端正常运行必需的头部。
⚠
头部不区分大小写,但按通常的写法来指定它们是一种良好实践。
⚠
忽略关键头部可能导致响应中重要元数据的丢失。