stub_status

'stub_status' 指令可为 NGINX 启用一个简单的状态监控页面。 — NGINX HTTP Core

stub_status
serverlocation
语法stub_status;
默认值none
上下文server, location
模块NGINX HTTP Core
参数none

说明

'stub_status' 指令提供了一种方式来公开 NGINX 的基本状态信息,包括活动连接数、被服务器接受的连接数、已处理的请求数以及已完成的请求总数。它需要在 server 上下文中定义一个 location 块以便可以访问,通常位于特定的 URI 下。当客户端访问配置的 URI 时,NGINX 会以纯文本格式返回当前的状态信息。 要使用 'stub_status',首先需要在 server 块内定义一个 location 块。在该 location 中以不带额外参数的方式启用 'stub_status'。可以使用访问控制指令(例如 'allow' 和 'deny')来限制对此页面的访问,从而确保只有特定客户端可以查询状态页。启用后,处理程序会处理对该 location 的请求并返回包含指标的响应,指标包括活动连接数、被服务器接受的连接数、已处理的请求数和总请求数,为监控和调试 NGINX 服务器的性能提供了有价值的洞见。

配置示例

server {
    listen 80;
    location /nginx_status {
        stub_status;
        allow 127.0.0.1;  # Only allow local requests
        deny all;         # Deny all other requests
    }
}

确保访问控制('allow' 和 'deny')已正确设置;否则,状态页面可能会暴露给未授权的用户。

确认用于 'stub_status' 的 location block 已正确设置,且不会被其他 location directives 覆盖。

以安全的方式监控服务器的性能指标;不加限制地暴露 stub statuses 可能导致信息泄露。