HAProxy 的acl应用

非常好的博文推荐:http://blog.51cto.com/1992tao/1875563

官方文档:https://cbonte.github.io/haproxy-dconv/1.9/configuration.html#block

hdr([<name>[,<occ>]]) : string                                 ACL derivatives :
这将提取请求的URL路径,该路径从第一条斜杠开始。                  hdr([<name>[,<occ>]])     : exact string match   hdr_reg(host) 匹配www.baidu.com的内容
在问号之前结束(没有主机部分)。一个典型的用法是                 hdr_beg([<name>[,<occ>]]) : prefix match         hdr_reg(user-agent)匹配请求报文中的浏览器
可预取的高速缓存和需要聚合的多个门户                             hdr_dir([<name>[,<occ>]]) : subdir match         acl missing_cl hdr_cnt(Content-length) eq 0
数据库中的信息,并将它们保存在缓存中。注意外出时                 hdr_dom([<name>[,<occ>]]) : domain match         #当请求的header中Content-length 等于0时返回true
缓存,更明智的是使用“URL”来代替。用ACL,它通常是               hdr_end([<name>[,<occ>]]) : suffix match         
用于匹配精确的文件名(例如“/Logial.php”)或目录部分使用        hdr_len([<name>[,<occ>]]) : length match         
派生形式。还可以看到“URL”和“BASE”获取方法。                  hdr_reg([<name>[,<occ>]]) : regex match          
                                                                 hdr_sub([<name>[,<occ>]]) : substring match      
path : string                                                   ACL derivatives :                                 
这将提取请求的URL路径,该路径从第一条斜杠开始。                  path     : exact string match      只匹配www.baidu.com/blog/lbb/index.html中
在问号之前结束(没有主机部分)。一个典型的用法是                 path_beg : prefix match            的/blog/lbb/index.html这部分URl
可预取的高速缓存和需要聚合的多个门户                             path_dir : subdir match            
数据库中的信息,并将它们保存在缓存中。注意外出时                 path_dom : domain match            
缓存,更明智的是使用“URL”来代替。用ACL,它通常是               path_end : suffix match            
用于匹配精确的文件名(例如“/Logial.php”)或目录部分使用        path_len : length match            
派生形式。还可以看到“URL”和“BASE”获取方法。                  path_reg : regex match             
                                                                 path_sub : substring match         
url : string                                                   ACL derivatives :
这将提取请求中呈现的请求的URL。一个典型的用法是                  url     : exact string match       匹配www.baidu.com/blog/lbb/index.html中
具有预取能力的缓存,以及需要聚合的门户。                         url_beg : prefix match             的全部内容
数据库中的多个信息,并将它们保存在缓存中。使用ACL,使用          url_dir : subdir match             
“路径”优于使用“URL”,因为客户端可以发送完整的URL作为         url_dom : domain match             
通常是用代理完成的。唯一真正的用途是匹配“*”。                  url_end : suffix match             
在“路径”中不匹配,并且已经存在预定义的ACL。见                  url_len : length match             
“路径”和“基础”。                                             url_reg : regex match              
redirect prefix <pfx> [code <code>] <option> \
[{if | unless} <condition>     url_sub : substring match
<代码>代码是可选的。它指示HTTP重定向的类型。                   method http方法:
是需要的。仅支持代码301, 302, 303、307和308,                    req_ver  请求版本
如果没有指定代码,则默认使用302。301手段                         resp_ver  响应版本
“永久移动”,浏览器可以缓存位置。三百零二                       status   http状态
意味着“临时移动”,意味着浏览器不应该                           url    精确匹配url
缓存重定向。303等于302,除了                                     url_reg  正则匹配
浏览器将获取一个get方法的位置。307只是                           url_dir   斜线之间
如302,但清楚地表明,同样的方法必须重复使用。                    url_dom   斜线之间或点之间
同样地,如果必须使用相同的方法,则308替换301。

原文地址:https://www.cnblogs.com/jeson-lbb/p/9904742.html

时间: 2024-10-05 20:39:39

HAProxy 的acl应用的相关文章

haproxy利用ACL规则封禁自定义IP地址拒绝访问

现在有一个需求就是在发版的时候希望除公司IP外的外网访问服务的时候都是拒绝访问的 现在利用haproxy 的acl规则作出限制 errorfile       403 /etc/haproxy/errfile/403.httpacl url_bao hdr(Host) -i bao.doyoulicai.com acl kongzhong_src src 222.73.17.25 222.73.17.24 http-request deny if url_jr !kongzhong_src us

haproxy 常用acl规则与会话保持

一.常用的acl规则 haproxy的ACL用于实现基于请求报文的首部.响应报文的内容或其它的环境状态信息来做出转发决策,这大大增强了其配置弹性.其配置法则通常分为两 步,首先去定义ACL,即定义一个测试条件,而后在条件得到满足时执行某特定的动作,如阻止请求或转发至某特定的后端.定义ACL的语法格式如下. acl <aclname> <criterion> [flags] [operator] <value> ... <aclname>:ACL名称,区分字符

HAProxy 之 ACL介绍和使用

1  概述 访问控制列表(ACL)的使用为HAProxy提供了一个灵活的解决方案来执行内容交换,并且通常基于从请求中提取的内容.响应或任何环境状态进行决策,HAProxy基于ACL实现了灵活的调度 本文介绍ACL语句中各个参数含义,定义ACL,使用ACL,以及结合例子来介绍ACL的使用  2  ACL作为条件时的逻辑关系 -与:隐式(默认)使用,默认为与的关系 -或:使用"or" 或"||"表示 -否定:使用"!" 表示 示例: 有两个条件为in

Haproxy 配置 ACL 处理不同的 URL 请求

需求说明服务器介绍:HAProxy Server: 192.168.1.90WEB1 : 192.168.1.103WEB2 : 192.168.1.105Domain: tecadmin.net当用户访问:tecadmin.net/blog链接,只会跳转到WEB2(192.168.1.105)服务器.而其他所有的访问将根据权值跳转到WEB1或者WEB2服务器 配置文件 global log 127.0.0.1 local0 notice maxconn 50000 daemon default

haproxy的acl与或非关系

当定义多个acl时,有时候需要多个条件进行组合: acl is_www hdr_beg(host) -i www.51yunv.com    acl is_dns src 116.211.121.0/24 218.65.212.0/24 正常的写法,单个条件: use_backend www if is_www 或者的写法: use_backend www if is_www || is_dns and的写法 use_backend www if is_www is_dns use_backen

haproxy基于ACL的动静分离

acl 语法: acl  <acl_name>  <criterion> [flags] [operator] <value> acl_name:自定义的acl名称,区分大小写,只能包含.字母.数字."-". "_"  .":"  . "." criterion:检查条件 flag:标志位,例如: -i:不区分大小写 operation:操作符,做数值比较,例如:eq(=).ge(>=

高可用高性能负载均衡软件HAproxy详解指南-第二章(配置文件、关键字、ACL)

第二章:HAproxy配置文件详解以及HAproxy的ACL详解 对Linux有兴趣的朋友加入QQ群:476794643 在线交流 本文防盗链:http://zhang789.blog.51cto.com 上一篇:第一章:HAproxy简介及安装配置 目录 haproxy 配置文件详解 haproxy 配置文件中的关键字参考 haproxy的ACL 附:一份完整的HAproxy的配置文件 由于字体过多分开写的,全系列文章链接 第一章:HAproxy简介及安装配置 http://zhang789.

haproxy+keepalived实现高可用负载均衡web集群

haproxy+keepalived实现高可用负载均衡web集群 负载均衡集群的概念 负载均衡是设计分布式系统架构必须要考虑的因素之一,它指的是通过调度分发的方式尽可能将"请求"."访问"的压力负载平均分摊到集群中的各个节点,避免有些节点负载太高导致访问延迟,而有些节点负载很小导致资源浪费.这样,每个节点都可以承担一定的访问请求负载压力,并且可以实现访问请求在各节点之间的动态分配,以实现负载均衡,从而为企业提供更高性能,更加稳定的系统架构解决方案. 高可用集群的概念

HAproxy简单入门

Haproxy 一.简介 Haproxy是一个开源的.高性能的基于TCP(四层)和HTTP(七层)应用的负载均衡软件.借助Haproxy可以更加快速的可靠的提供基于TCP和HTTP应用的负载均衡解决方案. 优点: 1.  可靠性.稳定性高 2.  最高可同时维护40000~50000 个并发连接,单位时间内处理最大请求数量为2000 个,最大数据处理 能力可达10Gbps. 3.  支持多于8中负载均衡算法,同时也支持session保持. 4.  支持虚拟主机功能,这样实现web负载均衡更加灵活