I am trying to enable sticky sessions in Apache, however it is not working. Below are the changes made by me. Am I missing something?
I do not see any error in the access log, however request from one user is still going to other server.
Step 1: Added below in httpd.conf of load balancer of server1 & server2
<Proxy balancer://marsBalancer>
BalancerMember http://server1fullname:8080 route=server1
BalancerMember http://server2fullname:8080 route=server2
ProxySet lbmethod=bytraffic
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /marsWAR/ balancer://marsBalancer/marsWAR/
Step 2: Updated below in server.xml
a) server.xml in server1
<Engine name="Catalina" defaultHost="localhost" jvmRoute="server1">
b) server.xml in server2
<Engine name="Catalina" defaultHost="localhost" jvmRoute="server2">
Try removing the marsWAR
part from the ProxyPass directive :
ProxyPass /marsWAR/ balancer://marsBalancer/
If it still does not work, try specifying the session <id>
directly to the ProxyPass directive by adding the following code:
ProxyPass /marsWAR/ balancer://marsBalancer/ stickysession=JSESSIONID
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With