nginx和php-fpm一样都内建了一个状态页,通过查看状态页信息可以连接到nginx服务负载情况,还可以利用状态页信息配zabbix监控,这里先介绍nginx的status状态页的使用。
staus状态页配置简单,要注意的是status定义内容只能存在location{}中
location /status {
stub_status on;
allow 127.0.0.1;
deny all;
access_log off;
}
【第一次配置启用了deny all 选择,发现页面打不开,注释后重载访问页面正常】
访问查看:http:IP/status
Active connections: 12
server accepts handled requests
639 639 1073
Reading: 0 Writing: 1 Waiting: 11
上面的内容信息如下:
Active connections:当前所有处于打开状态的活动连接数
accepts :已经接收连接数
handled : 已经处理过的连接数
requests : 已经处理过的请求数,在保持连接模式下,请求数量可能会大于连接数量
Reading: 正处于接收请求的连接数
Writing: 请求已经接收完成,处于响应过程的连接数
Waiting : 保持连接模式,处于活动状态的连接数
启动抱着个错误:nginx:[emerg] unknow directive "stub_status" in xxxxx.cnf
查看已安装的 Nginx 是否包含 stub_status 模块
#/usr/local/nginx/sbin/nginx -V
没有安装的话,可以在tar包安装编译的时候添加如下参数:
# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module
# make ##不要make install
# cd /usr/local/nginx/sbin/ && mv nginx nginx.bak //备份旧文件
# cp /usr/local/nginx-1.13.5/objs/nginx /usr/local/nginx/sbin/ //将编译好的nginx执行文件拷贝到目标目录
重启nginx服务