Nginx 提供了内置的状态监控模块 ngx_http_stub_status_module
,可以让你查看基本的服务器状态信息。以下是配置方法:
首先确保你的 Nginx 编译时包含了 --with-http_stub_status_module
选项。可以通过以下命令检查:
nginx -V 2>&1 | grep -o with-http_stub_status_module
如果有输出则表示已包含该模块。
在 Nginx 配置文件中添加以下内容(通常在 server
块中):
server {
listen 80;
server_name your.server.com;
location /nginx_status {
stub_status on;
access_log off;
allow 127.0.0.1; # 只允许本地访问
allow 192.168.1.0/24; # 或者允许特定IP段
deny all; # 拒绝其他所有IP
# auth_basic "Nginx Status";
# auth_basic_user_file /etc/nginx/.htpasswd; # 可选:添加基础认证
}
}
nginx -t && nginx -s reload
访问 http://your.server.com/nginx_status
将看到类似以下输出:
Active connections: 291
server accepts handled requests
16630948 16630948 31070465
Reading: 6 Writing: 179 Waiting: 106
如果需要更全面的监控,可以考虑:
Prometheus + Grafana:
nginx-prometheus-exporter
将 Nginx 状态导出为 Prometheus 格式Zabbix:
ELK Stack:
希望这些信息对你有所帮助!如需更详细的配置或有其他问题,请随时提问。