nginx重新整理——————http请求的11个阶段中的access阶段[十五]
前言
简单介绍一下access 阶段。
正文
限制某些ip地址的访问权限:
syntax: allow address| CIDR|unix:|all;
defuat: -
context: http,server,location,limit_except
syntax: deny address| CIDR|unix:|all;
defuat: -
context: http,server,location,limit_except
一个是允许一个是禁止。
access 账户密码:
auth_basic 模块的指令:
基于http basic authutication 协议进行用户名密码的认证。
默认编译金nginx: 通过 --without-http_auth_basic_module 禁用功能
syntax: auth_basic string | off;
default: auth_basic off;
context: http,server,location,limit_except
syntax: auth_basic_user_file file
default:--
context: http,server,location,limit_except
上面这个文件生成工具: httpd-tools
htpasswd -c file -b user pass
比如:
htpasswd -c -b test.pass axm aoo123456
然后在nginx 中添加。
像这样:
然后:
然后输入账户密码:
这个会给后台。
后台进行解密认证。相对来说还是不安全的。
还有以哦个auth_request 模块。
这个模块的意思是这样的,让一个url来统一鉴权。
还有一个satisfy 指令,这个指令是干什么的呢?
前面有access 模块、auth_basic、auth_request模块。这个如果satisfy all,表示只要有一个不过那就不过,如果是satisfy any,表示有一个过了就可以了。
然后他们的执行顺序也是access 模块、auth_basic、auth_request模块,如果是satisfy any,那么只要前面过了一个那么后面的就不会执行。
结
下一节precontent阶段