proxy_protocol_timeout

设置在 NGINX Stream 模块中接收 PROXY protocol header 的超时时间。 — NGINX Stream Core

proxy_protocol_timeout
streamstream server
语法proxy_protocol_timeout time;
默认值none
上下文stream, stream server
模块NGINX Stream Core
参数1

说明

`proxy_protocol_timeout` 指令指定在 stream 服务器上下文中从客户端接收 PROXY protocol header 的最大时限。该指令在使用 PROXY protocol 将客户端连接信息从负载均衡器或反向代理传递到后端服务器的场景中至关重要。如果在完整头部接收完成之前达到指定的超时,将关闭连接,从而确保证不会无限期占用资源等待不完整的数据。 该指令的参数是一个时间值,可以用秒指定,也可以用类似 '1s'、'10m'、'1h' 等的时间格式。超时时间应谨慎设置,以在适应网络波动的同时平衡资源分配。过短的超时可能会在客户端较慢或高延迟的环境中导致连接过早关闭,而过长的超时则可能不必要地增加资源消耗。 通过配置 `proxy_protocol_timeout`,服务器管理员可以确保他们的 stream 应用在涉及 PROXY protocol 的连接建立过程中更健壮,从而提升性能和用户体验。该指令通常与其他与 PROXY protocol 相关的配置一起使用,以优化 stream 服务器行为。

配置示例

stream {
    server {
        listen 1234;
        proxy_protocol_timeout 5s;
    }
}

请确保指定的超时时间考虑了您的网络状况;过短可能会中断合法连接。

此指令仅适用于使用 PROXY protocol 的服务器;请确保它已正确放置在此类 server blocks 中。