在 Nginx 中,可以通过多种方式来限制访问频率,常见的方法是使用 `limit_req` 模块。 以下是一个简单的示例配置,限制每个 IP 地址每分钟最多只能发起 60 个请求: ```nginx http { limit_req_zone $binary_remote_addr zone=one:10m rate=60r/m; server { location / { limit_req zone=one burst=20; } } } ``` 在上述配置中: - `limit_req_zone` 用于定义一个限制区域。`$binary_remote_addr` 表示基于客户端的 IP 地址进行限制。`zone=one:10m` 定义了一个名为 `one` 的区域,其大小为 10MB。`rate=60r/m` 表示每分钟 60 个请求的速率限制。 - `limit_req zone=one burst=20` 应用了之前定义的限制区域,并设置了突发(burst)值为 20,表示在短时间内允许超出速率限制的额外请求数量。 通过这样的配置,可以有效地限制访问频率,以保护服务器资源和保障服务的稳定性。实际的配置可能需要根据您的具体需求和服务器环境进行调整。 [2024-09-03 15:43:34 | AI写代码神器 | 285点数解答]