Então eu descobri qual era o problema. Eu tive que inverter o seguinte parâmetro
ProxyPassReverseCookiePath /context /
Agora não estou perdendo JSESSIONID.
Eu configurei um proxy reverso entre um front-end do Apache e vários back-ends do Tomcat. O bloco de código abaixo inclui o parâmetro ProxyHTMLURLMap para que o HTML possa ser reescrito para remover o caminho do contexto do Tomcat. Com esta configuração em vigor, após o login em meu aplicativo, um JSESSIONID inicial é definido corretamente, mas ao navegar para qualquer outra página, este JSESSIONID é perdido e outro é definido pelo aplicativo.
Devo mencionar que o login inicial direciona para um URL que inclui o caminho do contexto atual (ou seja, link ), mas Ao navegar para outra página, esse caminho de contexto não está presente na URL (ou seja, link ).
<Proxy balancer://happcluster>
BalancerMember ajp://happ01.h.s.com:8009 route=worker1 loadfactor=10 timeout=15 retry=5
BalancerMember ajp://happ02.h.s.com:8009 route=worker2 loadfactor=10 timeout=15 retry=5
BalancerMember ajp://happ03.h.s.com:8009 route=worker3 loadfactor=5 timeout=15 retry=5
BalancerMember ajp://happ04.h.s.com:8009 route=worker4 loadfactor=5 timeout=15 retry=5
BalancerMember ajp://happ05.h.s.com:8009 route=worker5 loadfactor=5 timeout=15 retry=5
ProxySet lbmethod=bytraffic
ProxySet stickysession=JSESSIONID
</Proxy>
ProxyPass /context balancer://happcluster/context
ProxyPass / balancer://happcluster/context/
<Location /context/>
# Rewrite HTTP headers and HTML/CSS links for everything else
ProxyPassReverse /
ProxyPassReverseCookieDomain / app.domain.com
ProxyPassReverseCookiePath / /context
ProxyHTMLURLMap /context/ /
# Be prepared to rewrite the HTML/CSS files as they come back
# from Tomcat
SetOutputFilter INFLATE;proxy-html;DEFLATE
</Location>
Alguém já se deparou com uma situação semelhante?
Então eu descobri qual era o problema. Eu tive que inverter o seguinte parâmetro
ProxyPassReverseCookiePath /context /
Agora não estou perdendo JSESSIONID.