是否可以在一个后端检查两个条件?例子
backend web-static
option httpchk GET /path/alive.php HTTP/1.1\r\nHost:\ www1.domain.com
option httpchk GET /path2/alive.php HTTP/1.1\r\nHost:\ www1.domain.com
server appsrv1 192.168.1.10:80 check inter 3000 weight 1
Run Code Online (Sandbox Code Playgroud) 这是一个有点愚蠢的问题,
我在想,因为我有一些矛硬件来安装 ESXi 免费版并允许一些外部用户使用预构建的 ubuntu 10.04 服务器。
由于使用内核更新等,必须重新安装 vmware 工具,我想在没有工具的情况下提供服务器。因此,客户不必害怕进行升级。
你有什么意见?
我使用 Ubuntu 和 haproxy 1.4.13 版本。
它的负载均衡两个子域:
现在我希望能够使用 ACL 根据url 请求发送到正确的后端 例如:
http://app1.domain.com/path/games/index.php sould be send to backend1
http://app1.domain.com/path/photos/index.php should be send to backend2
http://app2.domain.com/path/mail/index.php sould be send to backend3
http://app2.domain.com/path/wazap/index.php should be send to backend4
Run Code Online (Sandbox Code Playgroud)
我确实使用了以下 acl 的代码
frontend http-farm
bind 0.0.0.0:80
acl app1web hdr_beg(host) -i app1 # for http://app1.domain.com
acl app2web hdr_beg(host) -i app2 # for http://app2.domain.com
acl msg-url-1 url_reg ^\/path/games/.*
acl msg-url-2 url_reg ^\/path/photos/.*
acl msg-url-3 url_reg ^\/path/mail/.*
acl msg-url-4 url_reg ^\/path/wazap/.*
use_backend …
Run Code Online (Sandbox Code Playgroud)