插件窝 干货文章 nginx如何添加http_stub_status_module模块

nginx如何添加http_stub_status_module模块

Nginx status 模块 module 633    来源:    2025-04-23

在Nginx中添加http_stub_status_module模块

http_stub_status_module是Nginx的一个内置模块,用于提供基本的状态监控信息。以下是添加该模块的方法:

1. 检查是否已安装该模块

首先检查当前Nginx是否已经包含该模块:

nginx -V 2>&1 | grep -o with-http_stub_status_module

如果有输出则表示已安装。

2. 如果未安装,重新编译Nginx添加模块

对于新安装Nginx

在编译时添加--with-http_stub_status_module参数:

./configure --with-http_stub_status_module
make
sudo make install

对于已安装Nginx

  1. 找到当前Nginx的编译参数:
nginx -V
  1. 在原有参数基础上添加--with-http_stub_status_module重新编译:
./configure [原有参数] --with-http_stub_status_module
make
  1. 不要直接make install,而是替换二进制文件:
sudo cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
sudo cp objs/nginx /usr/local/nginx/sbin/nginx
sudo make upgrade

3. 配置启用状态页面

在Nginx配置文件中添加:

server {
    listen 80;
    server_name localhost;

    location /nginx_status {
        stub_status on;
        access_log off;
        allow 127.0.0.1;    # 只允许本地访问
        deny all;           # 拒绝其他所有IP
    }
}

4. 重新加载Nginx配置

sudo nginx -s reload

5. 测试访问

访问http://your-server/nginx_status,应该能看到类似以下输出:

Active connections: 1 
server accepts handled requests
 5 5 5 
Reading: 0 Writing: 1 Waiting: 0 

注意事项

  1. 出于安全考虑,建议限制访问该状态的IP地址
  2. 如果使用Nginx Plus,可以使用更全面的status模块
  3. 某些Linux发行版的Nginx包可能默认已包含此模块