【飞天奔月出品】nginx 使用stub_status 查看connections,auth_basic 限制访问 v1.0

nginx 配置好了,现在想看看nginx链接情况,怎么搞?

 

这个简单, nginx有个HttpStubStatusModuleChs

详见http://wiki.nginx.org/HttpStubStatusModuleChs

 

1.快速配置

只需要location  下面加入stub_status on;配置即可

 

 

    location /feilong-nginx-status {

        stub_status on;

     }

 

使用feilong-nginx -manager v2.0重载下配置文件

 

访问下看看

 



  

 

显示  以下信息

 

Active connections: 7
server accepts handled requests
 73 73 348
Reading: 1 Writing: 1 Waiting: 5

 

每个参数的意思 :

 

 

Active connections

对后端发起的活动连接数.

Server accepts handled

requests

 Nginx总共处理了73个连接,

成功创建73次握手(证明中间没有失败的),

总共处理了348个请求.

Reading

Nginx 读取到客户端的Header信息数.

Writing

Nginx 返回给客户端的Header信息数.

Waiting

开启keep-alive的情况下,这个值等于 active (reading + writing),

意思就是Nginx已经处理完成,正在等候下一次请求指令的驻留连接.

 

2.安全

 

这个地址肯定不能随随便便被别人访问,得加把锁参见tomcat加把锁

 

2.1  auth basic

 

配置比较简单, nginxHttpAuthBasicModule模块, 仅需在刚在的地方 ,加上 auth_basic 以及auth_basic_user_file两个参数

 

  location /feilong-nginx-status {

        stub_status on;

        auth_basic "feilong nginx status";

        auth_basic_user_file htpasswd;

     }

其中 auth_basic  用于显示用户输入basic表单提示

而下面的auth_basic_user_file 有点小复杂

 

  2.1.1 如果你服务器上安装了 apache

 可以使用它自带的工具来生成用户名密码

htpasswd -c /etc/nginx/htpasswd.users admin

 

2.1.2 如果没有apache(谁用nginx还装个apache?)

  See also: How do I generate an htpasswd file without having Apache tools installed?

 

2.1.3 如果像鑫哥 windows使用 nginx测试玩玩的

你可以, nginx.conf 同文件级,创建个htpasswd文件

里面的用户名密码如下:

 

 



 

 

 

嘿嘿, 可能被你发现了

 

windows下面这个文件,密码即可以是明文, 也可以是加密的密文

 

明文没话可说密文,可以使用在线生成神器来生成    http://www.htaccesstools.com/htpasswd-generator-windows/

 




 
 
 

 

 

这么一来 ,我们再访问 ningx_status  路径就需要密码了

 



 

如果没有auth 验证 ,会提示  401 Authorization Required

 



 

 

猜你喜欢

转载自feitianbenyue.iteye.com/blog/1989872