前言:
作为一个站长,了解本站实时的状态信息也是维护网站的重要信息之一,同时也能通过一些监控工具,例如zabbix对状态页面进行监控,从而取到实时的状态信息;
**ngx_http_stub_ststus__module模块配置**
stub_status;通过指定的uri输出stub status;
server{listen443ssl;listen172.16.61.4:80;;root/data/www/vhost1;ssl_certificate/etc/nginx/ssl/nginx.crt;ssl_certificate_key/etc/nginx/ssl/nginx.key;ssl_session_cacheshared:SSL:1m;ssl_session_timeout5m;ssl_ciphersHIGH:!aNULL:!MD5;ssl_prefer_server_cipherson;if($scheme=http){return301https://$server_name$request_uri;}location/status{stub_statuson;#打开访问状态页面}}
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_statuson;allow172.16.61.4;#我们只将该页面限制在本地ip地址可以访问denyall;}
**ngx_http_auth_basic_module模块的配置(basic认证)**
auth_basic string|off;使用http basic认证协议对用户进行认证;
auth_basic_user_file file;实现用户的账帐号文件;
[root@node3conf.d]#htpasswd-c-dpass_filetz#生成账户文件,需要放置到nginx的conf.d目录下Newpassword:Re-typenewpassword:Warning:Passwordtruncatedto8charactersbyCRYPTalgorithm.Addingpasswordforusertzlocation/status{#修改配置文件ststus页面认证方式stub_statuson;auth_basic"StatusArea";#认证界面提示符auth_basic_user_filepass_file;}
===========================================================================================