我搜索了整个网站和谷歌,但找不到我想要的东西。
目前我知道我们可以限制请求/IP,例如
limit_req_zone $binary_remote_addr 区域=一:30m 速率=20r/s;
我们可以在任何我们想要的位置使用
limit_req区域=一个突发=10节点延迟;
我的问题是。我如何同时限制所有 IP 的全局请求?简而言之,我有一个 PHP-FPM 位置,无论如何,我希望所有请求不超过每秒 200 个请求。
我想我们必须替换 $binary_remote_addr,但我不知道用什么。
答案1
创造一些独一无二、与其他任何东西都不一样的东西。
该领域limit_req_zone
只是一个键,它用作指定区域中的查找zone
。如果您有一个静态键,则所有查找都将匹配相同的内容,并且该区域的限制将实际上是全局的。
例如:
limit_req_zone global zone=my_php_location_to_limit:1k rate=200/s;
此处,global
没有语义含义。它只是一段随机的文本。它可以是anything
或something
或nothing
。