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:匹配后一位最大值的