weixin_35893241 2016-08-17 03:32 采纳率: 0%
浏览 1927

Nginx限制IP访问次数的问题

最近有个需要,对部署的Nginx进行ip限制,具体要求是要做到把ip分成2~3组,每一组的访问Nginx频率都可以不一样。
经过查找资料,目前我在Nginx的配置如下:

http{
...
   geo $whitelist{
       default 1;
       192.168.1.100; #假设客户机ip是这个
    }
    map $whitelist $limit{
      1 $binary_remote_addr;
      0 "";
    }
   limit_req_zone $limit zone=one:10m rate=1r/s;
   server{
        ...
       limit_req zone=one burst nodelay;
   }
}

(请忽略以上手打造成的拼写错误)
现在可以做到的是配置里的白名单生效,其他的根据漏桶算法来503拒绝异常的请求,但是还做不到对IP进行分组。
于是乎,我又配置了另一条geo 另一条 map 另一条 limit_req_zone 另一条limit_req (这个方法是我瞎尝试的),发现达不到预期目的,表象是同一条指令先配置的先生效,另外配的同一条指令不同参数不生效。
请问有什么办法可以达到我想要的目的?谢谢!

  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?