allow和deny这两个指令的意思是指,允许ip和限制ip
在此之前不得不提一下,这两个指令是存在于ngx_http_access_module模块之中的
allow
语法:allow address |CIDR|unix:|all:
默认值:None
区间:http,server,location,limit_except
允许一个ip或者ip段访问
deny
语法:deny address |CIDR|unix:|all:
默认值:None
区间:http,server,location,limit_except
禁止一个ip或者ip段访问
eg:
location / {
deny 192.168.1.1;
allow 192.168.1.0/24;
allow 10.1.1.0/16;
allow 2001:0db8::/32;
deny all;
}
为什么最后会有斜杠呢,其实这是表示ip段的意思
#屏蔽单个IP的命令是
deny 192.168.1.1
#封整个段即从123.0.0.1到123.255.255.254的命令
deny 123.0.0.0/8
#封IP段即从123.45.0.1到123.45.255.254的命令
deny 124.45.0.0/16
#封IP段即从123.45.6.1到123.45.6.254的命令是
deny 123.45.6.0/24
也就是说,如果最后的斜杠后的数值:
8:匹配后三位最大值的
16:匹配后两位最大值的
24:匹配后一位最大值的