Nginx limit_req 限制请求数的设置疑问

2022-06-16 09:32:33 +08:00
 BrJfUsTD

目标是限制 https://www.example.com/search.php 每个 IP 每秒最多访问 1 次,请问是直接这样设置吗?

limit_req_zone $binary_remote_addr zone=search:10m rate=1r/s;

当用户访问 https://www.example.com/search.php ,页面里引用的 CSS 、JS 、图片等资源会不会单独计算请求数?假设页面有 20 个引用资源,是不是应该这样设置?

limit_req_zone $binary_remote_addr zone=search:10m rate=20r/s;

一般页面,通常限制每秒多少请求数比较合适?看 Nginx 官方文档示例是限制每秒 10 个,允许突发 5 个。

1498 次点击
所在节点    NGINX
4 条回复
0312birdzhang
2022-06-16 09:47:24 +08:00
> 当用户访问 https://www.example.com/search.php ,页面里引用的 CSS 、JS 、图片等资源会不会单独计算请求数?

建议看一下你的资源文件 url 地址。。。Chrome/火狐里面按 F12 ,网络里面(手动狗头
BrJfUsTD
2022-06-16 09:49:17 +08:00
@0312birdzhang 访问页面下方显示 20 个请求数,这样 limit_req 也要设置 20 哦?
pupboss
2022-06-16 09:51:02 +08:00
一般来讲,限速是针对后端接口,你只针对那一个接口的路由做限速就好。再就是静态资源最好用静态文件的配置,路由隔离开来,好处非常多
BeforeTooLate
2022-06-17 09:04:21 +08:00
首先 css 和 js ,图片没有做 cdn 独立域名的话会算入请求数
所以你可以上 cdn 或者资源文件路径用另外域名。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/859926

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX