前言:
作为一个站长,了解本站实时的状态信息也是维护网站的重要信息之一,同时也能通过一些监控工具,例如zabbix对状态页面进行监控,从而取到实时的状态信息;
**ngx_http_stub_ststus__module模块配置**
stub_status;通过指定的uri输出stub status;
server { listen 443 ssl; listen 172.16.61.4:80; server_name www.tz.com; root /data/www/vhost1; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; if ($scheme = http) { return 301 https://$server_name$request_uri; } location /status { stub_status on; #打开访问状态页面 } }
status页面指标意义:
Active connections:当前活动的客户端连接数;
accepts:已经接受的客户端连接总数量;
handled:已经处理过的客户端连接总数量;
requests:客户端总的请求数;
Reading:正在读取的客户端请求的数量;
Writing:正向其发送响应报文的连接数量;
Waiting:等待其发出请求的空闲连接数量;
注:定义完status页面后显然不能将其开放至所有用户可见,至此我们需要对它进行访问控制;可以基于ip访问进行控制,也可以基于basic认证进行访问控制;
**ngx_http_access_module模块的配置(基于IP的访问控制)**
allow ADDRESS|CIDR|unix:|all;允许哪些ip地址进行访问;
deny ADDRESS|CIDR|unix:|all;拒绝哪些ip地址进行访问;
location /status { stub_status on; allow 172.16.61.4; #我们只将该页面限制在本地ip地址可以访问 deny all; }
**ngx_http_auth_basic_module模块的配置(basic认证)**
auth_basic string|off;使用http basic认证协议对用户进行认证;
auth_basic_user_file file;实现用户的账帐号文件;
[root@node3 conf.d]# htpasswd -c -d pass_file tz #生成账户文件,需要放置到nginx的conf.d目录下 New password: Re-type new password: Warning: Password truncated to 8 characters by CRYPT algorithm. Adding password for user tz location /status { #修改配置文件ststus页面认证方式 stub_status on; auth_basic "Status Area"; #认证界面提示符 auth_basic_user_file pass_file; }
===========================================================================================
转载于:https://blog.51cto.com/tz666/1748164