1.http里面的配置
limit_req_zone $binary_remote_addr zone=rateLimit:10m rate=2r/s;
1.$binary_remote_addr 是设置的单ip,不是总的并发量
2.rateLimit是一个变量跟server里面写的一样就可以,有的是认驼峰,可以改为ratelimit等
3.2r/s 是针对同一个ip每秒限制2次请求
3.limit_req_zone必须结合limit_req才能生效
2.server里面的配置
location ~ \.php$ {
limit_req zone=rateLimit burst=5 nodelay;
……
}
1.burst 是桶的概念,可以理解为队列,
2.若rate=2r/s,burst =1,在所有请求不释放的情况下,前2个请求正常访问,第3个请求进入队列,第4个请求的时候就会报503
3.测试的时候就是快速的刷新就可以
3 .错误
我本地是laradock,直接添加就可以,但是宝塔上配置有一些区别
1.在宝塔上的配置,http里面的limit_req_zone $binary_remote_addr zone=rateLimit:10m rate=2r/s;是一样的
2.server里面的配置
先注释了,换成下面的代码就可以了
里面的代码是从enable-php-73.conf里面粘出来的