【发布时间】:2025-12-14 00:55:02
【问题描述】:
我正在尝试限制来自某个 IP 的请求数量,以防收到太多请求。
例如:如果我每分钟收到超过 50 个请求,我想阻止它 IP 5 分钟。
当我使用request.META['REMOTE_ADDR'] 时,我总是得到本地主机的 IP,而不是发送请求的主机。
- 如何获取发送请求的计算机的 IP?
- 如何限制该 IP 在 X 时间内不发送更多请求?
【问题讨论】:
-
IMO,此功能应使用您部署的 Web 服务器而不是 Django 来实现。参见,例如:nginx.org/en/docs/http/ngx_http_limit_req_module.html