diff --git a/doc/configuration.txt b/doc/configuration.txt index c7f44a5763..6f3292ce1a 100644 --- a/doc/configuration.txt +++ b/doc/configuration.txt @@ -805,12 +805,14 @@ errorloc X X X X errorloc302 X X X X -- keyword -------------------------- defaults - frontend - listen -- backend - errorloc303 X X X X +force-persist - X X X fullconn X - X X grace X X X X hash-type X - X X http-check disable-on-404 X - X X http-request - X X X id - X X X +ignore-persist - X X X log X X X X maxconn X X X - mode X X X X @@ -836,7 +838,6 @@ option httpchk X - X X option httpclose (*) X X X X option httplog X X X X option http_proxy (*) X X X X -option ignore-persist - X X X option independant-streams (*) X X X X option log-health-checks (*) X - X X option log-separate-errors (*) X X X - @@ -1005,7 +1006,7 @@ appsession len timeout appsession JSESSIONID len 52 timeout 3h See also : "cookie", "capture cookie", "balance", "stick", "stick-table" - and "option ignore-persist" + and "ignore-persist" backlog @@ -1703,7 +1704,7 @@ cookie [ rewrite | insert | prefix ] [ indirect ] [ nocache ] cookie SRV insert postonly indirect See also : "appsession", "balance source", "capture cookie", "server" - and "option ignore-persist". + and "ignore-persist". default-server [param*] @@ -1898,7 +1899,7 @@ force-persist { if | unless } "unless" condition is met. The final redispatch is always disabled when this is used. - See also : "option redispatch", "option ignore-persist", "persist", + See also : "option redispatch", "ignore-persist", "persist", and section 7 about ACL usage. @@ -2091,6 +2092,30 @@ id value will be 1. This ID is currently only returned in statistics. +ignore-persist { if | unless } + Declare a condition to ignore persistence + May be used in sections: defaults | frontend | listen | backend + no | yes | yes | yes + + By default, when cookie persistence is enabled, every requests containing + the cookie are unconditionally persistent (assuming the target server is up + and running). + + The "ignore-persist" statement allows one to declare various ACL-based + conditions which, when met, will cause a request to ignore persistence. + This is sometimes useful to load balance requests for static files, which + oftenly don't require persistence. This can also be used to fully disable + persistence for a specific User-Agent (for example, some web crawler bots). + + Combined with "appsession", it can also help reduce HAProxy memory usage, as + the appsession table won't grow if persistence is ignored. + + The persistence is ignored when an "if" condition is met, or unless an + "unless" condition is met. + + See also : "force-persist", "cookie", and section 7 about ACL usage. + + log global log
[ []] Enable per-instance logging of events and traffic.