Plüm wrote:
-----Ursprüngliche Nachricht-----
Von: jean-frederic clere
Gesendet: Donnerstag, 12. Juli 2007 13:37
An: dev@httpd.apache.org
Betreff: httpd returns 500 when a route does not belong to
the balancer.
Hi,
I would like to fix a problem in mod_proxy_balancer when the
configuration is something like:
+++
<Location /myapp>
ProxyPass balancer://mycluster/myapp
stickysession=JESSSIONID|jsessionid nofailover=On
</Location>
<Location /titi>
ProxyPass balancer://mytiti/titi
stickysession=JESSSIONID|jsessionid nofailover=On
</Location>
<Proxy balancer://mytiti>
BalancerMember ajp://jfcpc:8009 smax=10 timeout=10 route=test2
</Proxy>
<Proxy balancer://mycluster>
BalancerMember ajp://neo:8009 smax=10 timeout=10 route=toto
</Proxy>
+++
When jumping from /myapp with a JSESSIONID=id.test2 to /titi httpd
returns 500 but it should have ignored the route test2 because it
doesn't belong to any of the members of the balancer corresponding to
the location.
To be honest the correct fix IMHO is to set the correct path for the cookie
such that the browser does not sent the wrong sessionid when switching from
myapp to titi and vice versa. If you do not do this you always loose your
session when you switch between both applications which is unlikely to be the
desired behaviour.
The problem in fact occurs when there is a single sign on configuration
on both applications and each application is running in a different cluster.
It is not possible to set the cookie path to /titi or /myapp in this case.
Cheers
Jean-Frederic
Nevertheless the patch looks ok, but given the above I am -0 on it.
Regards
Rüdiger