nginx--模块2--基于用户

Posted Le1543

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx--模块2--基于用户相关的知识,希望对你有一定的参考价值。

基于用户_明文传输http

工具安装,yum install -y httpd-tools 

设置用户名和密码htpasswd -b -c /etc/nginx/.auth.conf testnginx 123456

/etc/nginx/conf.d/default.conf中在监控部分添加

location /status {
stub_status;
access_log off;
deny 10.0.0.1;
allow all;
auth_basic \'test\';    //个别浏览器提示引号内容,如火狐
auth_basic_user_file /etc/nginx/.auth.conf; //认证文件
}

访问控制

 

#limit_conn_zone $binary_remote_addr zone=conn_zone:10M;               //公共部分基于tcp连接,接收10M大的ip地址,其中红色字体可以变
limit_req_zone $binary_remote_addr zone=req_test:10m rate=1r/s;    //公共部分基于请求连接,接收10M地址和容许每个地址中每秒1个请求,其中红色字体可以变
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
#limit_conn zone=conn_zone1;
limit_req zone=req_test;

}

.....

}

压测ab -n 50 -c 20 http://192.168.3.222/index.html   //20个主机同时发送50个请求

 

因每秒接收1个请求,剩下延时处理,主机处理请求1个,所以只有1个成功49个失败

改每秒10个

 

 

 

 

依然失败49个

 

每秒处理1个请求burst定义请求数量,超出部分返回503

 

10请求,3并发,错误4个

 

以上是关于nginx--模块2--基于用户的主要内容,如果未能解决你的问题,请参考以下文章

基于Nginx实现一个自己的HTTP模块

基于Nginx实现一个自己的HTTP模块

Nginx实现基于用户的访问控制(Ngx_http_auth_basic_module模块)

Nginx实现基于用户的访问控制(Ngx_http_auth_basic_module模块)

nginx 用户访问添加密码;autoindex模块详解;传送client IP

Nginx中常见的模块及其作用