Nginx通过geo模块设置白名单的例子
2020-03-11 17:50
621 查看
原配置:
http { ......
limit_conn_zone $binary_remote_addr zone=one:10m; limit_req_zone $binary_remote_addr zone=fifa:10m rate=5r/s;
...... server { ...... limit_conn one 5; limit_req zone=fifa burst=100; ...... }}
白名单配置:
http { ......
geo $whiteiplist { default 1; 127.0.0.1 0; 10.10.0.0/24 0; } map $whiteiplist $limit { 1 $binary_remote_addr; 0 ""; } limit_conn_zone $limit zone=one:10m; limit_req_zone $limit zone=fifa:10m rate=5r/s;
...... server { ...... limit_conn one 5; limit_req zone=fifa burst=100; ...... }}
说明:
geo指令定义一个白名单$whiteiplist, 默认值为1, 所有都受限制。 如果客户端IP与白名单列出的IP相匹配,则$whiteiplist值为0也就是不受限制。
map指令是将$whiteiplist值为1的,也就是受限制的IP,映射为客户端IP。将$whiteiplist值为0的,也就是白名单IP,映射为空的字符串。
limit_conn_zone和limit_req_zone指令对于键为空值的将会被忽略,从而实现对于列出来的IP不做限制。
以上这篇Nginx通过geo模块设置白名单的例子就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- nginx防刷limit 设置白名单(geo模块)
- nginx利用geo模块做限速白名单以及geo实现全局负载均衡的操作记录
- Flex中通过设置textAlign和labelStyleName样式设置FormItem容器中标签文本对齐方式的例子
- [转载]nginx简单防盗链及设置默认虚拟主机(禁止通过IP访问)
- 通过设置nginx的client_max_body_size解决nginx+php上传大文件的问题
- Flex中如何通过getHeaderAt()函数以及selectedUpIcon,selectedOverIcon和selectedDownIcon样式给Accordion头部设置一个分割用图标的例子
- PHP开发框架kohana3.3.1在nginx下的伪静态设置例子
- Flex中通过headerHeight风格设置TitleWindow容器(container)的header部高度的例子
- Flex中如何通过设置editable属性创建一个可编辑的DataGrid控件的例子
- Flex中如何通过设置cornerRadius样式设定NumericStepper控件边缘棱角圆滑幅度(corner radius)的例子
- Flex中通过设置textAlign和headerStyleName样式设置DateChooser控件头部年月文本对齐方式的例子
- Flex中通过设定borderColor样式给ComboBox控件设置边框颜色的例子
- Flex中如何通过mode属性设置进度条ProgressBar动画状态的例子
- nginx设置目录白名单、ip白名单
- Flex中通过设置fontFamily和labelStyleName样式在HSlider控件中使用嵌入字体的例子
- 通过设置nginx的client_max_body_size解决nginx+php上传大文件的问题
- TX2 USB串口驱动ttyACM模块 通过编译内核设置
- elk模块x-pack简单替代,按照索引设置不同用户(nginx权限控制)
- Flex中如何通过dataTipOffset样式设置HSlider控件的数据开销的例子
- Flex中如何通过borderStyle和borderSides样式设置NumericStepper控件特定边框(上下左右边)的例子