如何使用HAProxy重定向URL

hel*_*y77 12 haproxy

我需要将www.foo.com和foo.com重定向到haproxy的www.bar.com,这是我的配置:

frontend  http-in
    bind *:80

    acl bar.com hdr(host) -i www.bar.com
    ...
    use_backend     bar.com_cluster if bar.com
    ... 
    redirect prefix http://foo.com code 301 if { hdr(host) -i www.bar.com }
    redirect prefix http://www.foo.com code 301 if { hdr(host) -i www.bar.com }
    ...

backend bar.com_cluster
    balance roundrobin
    option httpclose
    option forwardfor
    server bar 10.0.0.1:80 check
Run Code Online (Sandbox Code Playgroud)

我试过redirect prefix但不工作,有什么想法吗?

hel*_*y77 20

更改主机名的顺序:

redirect prefix http://www.bar.com code 301 if { hdr(host) -i foo.com }
redirect prefix http://www.bar.com code 301 if { hdr(host) -i www.foo.com }
Run Code Online (Sandbox Code Playgroud)

代替

redirect prefix http://foo.com code 301 if { hdr(host) -i www.bar.com }
redirect prefix http://www.foo.com code 301 if { hdr(host) -i www.bar.com }
Run Code Online (Sandbox Code Playgroud)