83 lines
2.3 KiB
INI
83 lines
2.3 KiB
INI
#
|
|
# This is a sample configuration
|
|
# haproxy >= 1.3.5 required.
|
|
#
|
|
# It listens on 192.168.1.10:80, and directs all requests for Host 'img' or
|
|
# URIs starting with /img or /css to a dedicated group of servers. URIs
|
|
# starting with /admin/stats are directed to a backend dedicated to statistics.
|
|
# TCP splicing is used on static objects to relieve the process from the heavy
|
|
# job.
|
|
#
|
|
|
|
global
|
|
maxconn 10000
|
|
log 127.0.0.1 local0
|
|
uid 200
|
|
gid 200
|
|
chroot /var/empty
|
|
daemon
|
|
|
|
|
|
# The public 'www' address in the DMZ
|
|
frontend public
|
|
bind 192.168.1.10:80
|
|
mode http
|
|
log global
|
|
option httplog
|
|
option dontlognull
|
|
option httpclose
|
|
option tcpsplice
|
|
monitor-uri /monitoruri
|
|
maxconn 8000
|
|
clitimeout 30000
|
|
|
|
# Host: will use a specific keyword soon
|
|
reqisetbe ^Host:\ img static
|
|
|
|
# The URI will use a specific keyword soon
|
|
reqisetbe ^[^\ ]*\ /(img|css)/ static
|
|
reqisetbe ^[^\ ]*\ /admin/stats stats
|
|
|
|
default_backend dynamic
|
|
|
|
|
|
# The static backend backend for 'Host: img', /img and /css.
|
|
# TCP splicing is enabled on this backend because we don't expect to do
|
|
# anything interesting with static objects, but we know they can eat much
|
|
# bandwidth.
|
|
backend static
|
|
mode http
|
|
balance roundrobin
|
|
option tcpsplice
|
|
contimeout 5000
|
|
srvtimeout 5000
|
|
redispatch
|
|
retries 2
|
|
option httpchk HEAD /favicon.ico
|
|
server statsrv1 192.168.1.8:80 check inter 1000
|
|
server statsrv2 192.168.1.9:80 check inter 1000
|
|
|
|
|
|
backend dynamic
|
|
mode http
|
|
balance roundrobin
|
|
contimeout 30000
|
|
srvtimeout 30000
|
|
redispatch
|
|
retries 2
|
|
option httpchk HEAD /login.php
|
|
cookie DYNSRV insert indirect nocache
|
|
fullconn 4000 # the servers will be used at full load above this number of connections
|
|
server dynsrv1 192.168.1.1:80 minconn 50 maxconn 500 cookie s1 check inter 1000
|
|
server dynsrv2 192.168.1.2:80 minconn 50 maxconn 500 cookie s2 check inter 1000
|
|
server dynsrv3 192.168.1.3:80 minconn 50 maxconn 500 cookie s3 check inter 1000
|
|
server dynsrv4 192.168.1.4:80 minconn 50 maxconn 500 cookie s4 check inter 1000
|
|
|
|
|
|
backend stats
|
|
log global
|
|
mode http
|
|
stats uri /
|
|
balance roundrobin
|
|
|