Nginx限制请求全局


3

我搜索了整个网站和Google,找不到我想要的东西。

目前我知道我们可以例如限制请求/ IP

limit_req_zone $ binary_remote_addr zone = one:30m rate = 20r / s;

我们可以在任何想要的位置使用

limit_req区域=一个突发= 10节点布局;

我的问题是。如何同时限制所有IP的全局请求?简而言之,我有一个PHP-FPM位置,无论如何,我希望所有请求不超过200个请求/秒。

我想我们必须替换$ binary_remote_addr,但是我不知道要做什么。

Answers:


6

弥补,这是独一无二的,不会与其他任何东西匹配。

中的该字段limit_req_zone只是一个键,它用作指定的查找zone。如果您有静态密钥,则所有查找都将匹配相同,并且该区域的限制将是有效的全局范围。

例如:

limit_req_zone global zone=my_php_location_to_limit:1k rate=200/s;

在这里,global没有语义含义。这只是一小段文字。可能是anythingor somethingnothing


1
啊! 我好笨 现在我注意到了。您还设置了区域1k,因为既然密钥是静态的,它将不会超过1k?
user3393046 '16

实际上只有几个字节。那么为什么要浪费内存呢?
迈克尔·汉普顿
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.