$limit_conn_status

$limit_conn_status 返回 NGINX 中每个客户端的连接限制状态。 — NGINX Core (HTTP)

$limit_conn_status NGINX Core (HTTP)

说明

变量 $limit_conn_status 在 NGINX 中用于表示对客户端请求施加的连接限制的状态。当通过 'limit_conn' 指令启用连接限制时,该变量会被设置以反映客户端连接相对于定义的限制的状态。该变量的典型值包括 'none'(表示未超出限制)、'exceeded'(当客户端超过允许的连接数)或 'aborted'(当连接处理被中止时)。 在 NGINX 配置中,$limit_conn_status 的值对日志记录或条件处理特别有用。它提供了关于服务器对客户端施加的连接限制的重要反馈。可以利用这些反馈来创建自定义响应或基于客户端连接行为记录特定事件。NGINX 在处理请求时,在评估诸如 'limit_conn_zone' 和 'limit_conn' 之类的指令施加的连接限制后设置该变量。

配置示例

http {
    limit_conn_zone $binary_remote_addr zone=addr:10m;

    server {
        limit_conn addr 1;

        location / {
            if ($limit_conn_status = exceeded) {
                return 503;
            }
            # Other configurations...
        }
    }
}

子系统

http

可缓存

上下文

http, server, location, if

确保 'limit_conn' 指令在任何 location 或 server 块之前声明,否则它不会生效。

并非所有上下文都支持使用该变量,因此注意适当的作用域至关重要。

在超出预期限制的情况下使用它可能导致配置出现意外行为。