# IP地址白名单限制表,默认返回1 否则返回0
geo $limit {
default 1;
222.210.138.71/24 0;
172.28.90.138/24 0;
}
map $limit $limit_key {
0 "";
1 $binary_remote_addr;
}
# 分配10M空间,存10万个IP,每个IP限制为每秒5次请求
# 白明白内的IP不做此限制
limit_req_zone $limit_key zone=req_zone:10m rate=5r/s;
# 默认限制 就算是白名单IP也会被限制 最多请求频率为每秒10次
limit_req_zone $binary_remote_addr zone=req_zone_wl:10m rate=10r/s;
# 搜索请求走白名单检查 req_zone 这个limit_req_zone burst 桶容量50 无延迟
limit_req zone=req_zone burst=50 nodelay;
#所有请求走req_zone_wl 这个limit_req_zone burst 桶容量100 无延迟
limit_req zone=req_zone_wl burst=100 nodelay;
全部评论