任务:限制 Nginx 中的某些请求(“重度”,会导致大量资源使用),同时对其他请求应用较少的限制。
当前配置如下:
http {
...
# Up to 2/min for /heavy/request
limit_req_zone $remote_addr zone=slow:10m rate=2r/m;
# Up to 60/sec for everything else
limit_req_zone $remote_addr zone=common_sec:10m rate=60r/s;
server {
...
limit_req zone=common_sec burst=90 nodelay;
location /heavy/request {
limit_req zone=slow;
}
...
}
...
}
我原本预计 /heavy/request 在每分钟尝试超过两次时将被阻止,但该限制似乎从未应用。
我应该如何修改配置以按预期限制“重度”请求?
谢谢。