Hi,
I'm using haproxy 1.3.15.7 and I'm not sure about how to read the server
affiliation from the query
string, when usually it's read from a cookie.
The normal way for clients to connect is a listener group, which distributes
the client onto one of
the two servers in this group (affiliation will be prefixed to a cookie). If
there is no existing
affiliation is found in the cookie, the client will be round robbed. All of
this is working pretty good.
Now there's a special case that is happening on logout of a user: An external
(automated) system is
sending a http GET request that has the very same "SESSIONID=<cookie
name>~<cookie string> in the
query string, but no cookie set.
How would I be able to achieve that haproxy will dispatch this request to the
server defined by
"cookie name"?
This is the current setup for the listener group:
listen mygroup <ip>:80
mode http
log /dev/log daemon info
option httplog
option dontlognull
balance roundrobin
cookie SESSIONID prefix nocache
option httpclose
option forwardfor
appsession SESSIONID len 40 timeout 1h
server server01 10.0.1.10:80 cookie first check inter 5000
server server02 10.0.1.11:80 cookie second check inter 5000
First: appsession doesn't seem to help here, because for "normal" client
sessions, the session table
is empty.
I was thinking about using ACLs. But in my understanding, this would mean I
have define 1 frontend
section, 1 backend section for server01, 1 backend section for server02 and 1
backend section for
both, so I can use "default_backend". This would be n+1 backend sections.
Am I getting something wrong? Is this the solution or is there another solution?
Best,
Michael