push_stream_max_channel_id_length

设置 NGINX 中 Push Stream 通道 ID 的最大长度。

语法push_stream_max_channel_id_length number;
默认值none
上下文http
参数1

说明

push_stream_max_channel_id_length 指令用于定义 NGINX Push Stream 模块中通道 ID 的最大允许长度。此设置对于控制通道标识符的输入大小非常重要,因为它会影响内存使用和请求期间的 URL 长度。如果通道 ID 的长度超过指定的最大值,模块将拒绝该请求,从而确保过长的标识符不会导致性能或安全问题。

在配置此指令时,管理员应考虑应用中通道 ID 的典型使用场景。例如,如果通道 ID 源自用户输入或其他动态来源,则需要设置一个合适的限制,以便允许描述性的标识符同时避免滥用。该指令仅接受一个数值参数,该参数表示通道 ID 的最大字符数。模块在请求处理过程中强制执行此限制,并在 ID 过长时向客户端提供反馈。

由于该指令对通道管理的影响,应在 http 级别设置该指令,使其可用于在该级别定义的所有服务器上下文中。这便于在同一 NGINX 实例处理的各种虚拟主机或位置之间集中控制通道 ID 管理。

配置示例

http {
    push_stream_max_channel_id_length 64;
    
    server {
        location /pub {
            push_stream_publisher admin;
            push_stream_channels_path $arg_id;
        }
    }
}

将此值设置得过低可能会阻止服务器接受合法的通道 ID。

错误配置此指令可能会导致客户端在尝试访问具有合法但较长标识符的通道时出现意外错误。

← 返回所有指令