Nginx:如何正确设置速率限制?



经过谷歌搜索,我找不到如何使用nginx和debian限制速率的好信息。

我不确定我应该在哪里添加过滤器 nginx.conf 或默认值。 我将其添加到默认值,不确定它是否正确:

limit_req_zone  $binary_remote_addr  zone=one:10m   rate=1r/s;
server {
server_name Realesta74.net;
location / {
limit_req zone=one burst=5;
}

}

这样好吗? 以及如何测试它?

无论Linux发行版(Debian,Ubuntu等(如何,Nginx的速率限制都是相同的。 Nginx官方提供了很好的教程和解释:

https://www.nginx.com/blog/rate-limiting-nginx/

可以使用多连接 URL 工具(如 Siege 或 Apache Benchmark 工具(进行测试,并且 Siege 此示例使用 30 个同时连接来测试网页上的速率限制。 503 响应将显示是否正确配置了速率限制:

$ siege -c 30 -r 1 --no-parser https://www.example.com/

最新更新