Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have an HTTP farm with the following configuration:

listen webfarm 10.254.23.225:80
       mode http
       balance roundrobin
       cookie SERVERID insert
       option httpclose
       option forwardfor
       option httpchk HEAD /check.txt HTTP/1.0
       server webA 10.254.23.4:80 cookie A check
       server webB 10.248.23.128:80 cookie B check

I would like to add some option which would forward all requests for a specific URI (i.e /special) to a 3rd web server. How should I do it?

share|improve this question
add comment

1 Answer

up vote 6 down vote accepted

Here is a blog post I wrote on load balancing based on the host headers:

http://www.techrawr.com/2009/09/18/using-the-acl-in-haproxy-for-load-balancing-named-virtual-hosts/

If you would like to match against a URI or directory, I would suggest using path_beg instead of hdr_end that is used in the example provided on that page. Below is an example of how you might do this with your configuration:

frontend http-in
    bind 10.254.23.225:80
    acl has_special_uri path_beg /special
    use_backend special_server if has_special_uri
    default_backend webfarm

backend webfarm
    balance roundrobin
    cookie SERVERID insert
    option httpchk HEAD /check.txt HTTP/1.0
    option httpclose
    option forwardfor
    server webA 10.254.23.4:80 cookie webA check
    server webB 10.248.23.128:80 cookie webB check

backend special_server
    balance roundrobin
    cookie SERVERID insert
    option httpchk HEAD /check.txt HTTP/1.0
    option httpclose
    option forwardfor
    server webC 10.0.0.1:80 cookie webC check

Hope that helps!

share|improve this answer
    
Hey, saw your answer only now. I've actually already solved it using this same solution. Thanks for your answer! –  Saggi Malachi Apr 1 '10 at 22:14
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.