如何每个客户端一次限制1个请求?

时间:2017-11-24 17:34:19

标签: nginx throttling

ngx_http_limit_req_module不同,我正在寻找一种方法,每个IP一次限制1个请求。换句话说,如果先前的请求尚未被上游应用服务器响应,则Nginx应该444或429任何进一步的请求。

  1. Intuition表示,与ngx_http_limit_req_module相比,这可以节省内存,因为没有要增加的计数器。

  2. 在某些情况下(例如机器人,暴力攻击等),上游应用服务器可以选择故意保留例如惩罚的请求。 10秒或10分钟 - 但如果Nginx仍然允许用户并行提出请求,则惩罚只是攻击者可以走动的墙。

1 个答案:

答案 0 :(得分:1)

您可以使用ngx_http_limit_conn

但由于世界上几乎所有ISP都使用NAT,您可能会面临一些问题