Revision: 16122
Updated Code
at July 27, 2009 11:11 by alexwilliams
Updated Code
# HTTP web cluster
frontend cluster_http
bind :80
mode http
option forwardfor
acl content_php path_end .php
use_backend dynamic_cluster_http if content_php
default_backend static_cluster_http
# Static cluster serving every file EXCEPT those ending with .php
backend static_cluster_http
mode http
option forwardfor
balance source
option httpclose
option httpchk HEAD / HTTP/1.0
server staticweb1 192.168.0.100:80 weight 1 check inter 1000 rise 5 fall 1
server staticweb2 192.168.0.101:80 weight 1 check inter 1000 rise 5 fall 1
# Dynamic cluster serving files ending with .php
backend dynamic_cluster_http
mode http
option forwardfor
balance source
option httpclose
option httpchk HEAD / HTTP/1.0
server dynweb1 192.168.0.102:80 weight 1 check inter 1000 rise 5 fall 1
server dynweb2 192.168.0.103:80 weight 1 check inter 1000 rise 5 fall 1
Revision: 16121
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at July 27, 2009 11:08 by alexwilliams
Initial Code
# HTTP web cluster
frontend cluster_http
bind :80
mode http
option forwardfor
acl content_php path_end .php
use_backend dynamic_cluster_http if content_php
default_backend static_cluster_http
# Static cluster service every page EXCEPT those ending with .php
backend static_cluster_http
mode http
option forwardfor
balance source
option httpclose
option httpchk HEAD / HTTP/1.0
server staticweb1 192.168.0.100:80 weight 1 check inter 1000 rise 5 fall 1
server staticweb2 192.168.0.101:80 weight 1 check inter 1000 rise 5 fall 1
# Dynamic cluster serving pages ending with .php
backend dynamic_cluster_http
mode http
option forwardfor
balance source
option httpclose
option httpchk HEAD / HTTP/1.0
server dynweb1 192.168.0.102:80 weight 1 check inter 1000 rise 5 fall 1
server dynweb2 192.168.0.103:80 weight 1 check inter 1000 rise 5 fall 1
Initial URL
Initial Description
How to send load-balanced requests to a web cluster and split the requests to different server pools based on specific ACL rules. This configuration sends files ending with .php to a pool of "dynamic" web servers (running Apache). It sends all other files (.js, .jpg, .css, .html) to a pool of "static" web servers (running Lighttpd).
Initial Title
Haproxy load-balanced web cluster with different backends through acl's
Initial Tags
web
Initial Language
Other