http2_max_header_size

http2_max_header_size 指令对 HTTP/2 请求和响应的头部最大尺寸设置了限制。 — NGINX HTTP Core

http2_max_header_size
httpserver
语法http2_max_header_size size;
默认值none
上下文http, server
模块NGINX HTTP Core
参数1

说明

'http2_max_header_size' 指令用于控制 NGINX 服务器愿意处理的 HTTP/2 头部的最大尺寸。该指令有助于缓解潜在的拒绝服务攻击,防止过大的头部耗尽服务器资源。该指令的值以字节为单位指定,合理设置此值对于确保服务器在保持性能和安全性的同时高效处理常规请求至关重要。如果头部超过此限制,NGINX 将向客户端返回错误,从而防止服务器被大头部淹没。 该指令可以在 'http' 和 'server' 上下文中配置,允许在服务器配置的不同级别进行细粒度调整。它接受单个参数,表示允许的头部最大大小。请注意,过小的值可能导致合法请求被拒绝,而过大的值可能使服务器暴露于性能问题或通过畸形请求的利用中。

配置示例

http {
    http2_max_header_size 4096;
}

server {
    http2_max_header_size 8192;
}

将该指令设置得过低可能导致合法请求被拒绝,从而引发可用性问题。

在更改后请记得测试配置,确保重要的头部不会被意外阻止。