# This is a test configuration.
# It must use only the first backup server. Check local apache logs to
# verify :
#
#  tail /var/log/apache/access_log


global
	maxconn		100

listen  sample1
        mode            http
        option		httplog
        option          dontlognull
        retries         1
        redispatch
        contimeout      1000
        clitimeout      5000
        srvtimeout      5000
        maxconn 40000
        bind :8081
        balance roundrobin
        server  srv1 127.0.0.1:80 cookie s1 check port 81 inter 1000 fall 1
        server  srv2 127.0.0.2:80 cookie s2 check port 81 inter 1000 fall 1
        server  srv3 127.0.0.3:80 cookie s3 check port 81 inter 1000 fall 1
        server  srv4 127.0.0.4:80 cookie s4 check port 81 inter 1000 fall 1
        server  bck1 127.0.1.1:80 cookie b1 check port 80 inter 1000 fall 1 backup
        server  bck2 127.0.1.2:80 cookie b2 check port 80 inter 1000 fall 1 backup
        server  bck3 127.0.1.3:80 cookie b3 check port 80 inter 1000 fall 1 backup
        server  bck4 127.0.1.4:80 cookie b4 check port 80 inter 1000 fall 1 backup
        option  httpclose
	errorloc 503 /503

