Adicione o snippet a seguir ao seu arquivo de configuração e tente novamente:
if ($http_cookie ~* "jsessionid=([^;]+)(?:;|$)") {
set $co "jsessionid=$1";
}
proxy_set_header Cookie "$co";
Estou usando o nginx como proxy reverso para uma configuração do tomcat, e tudo funciona bem na maior parte, o único problema que estou tendo é que cada solicitação para um endereço http resulta em uma nova ID JSESSION sendo criada (isso não acontecer em http), aqui está a parte relevante da configuração do NGINX:
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
proxy_connect_timeout 240;
proxy_send_timeout 240;
proxy_read_timeout 240;
proxy_pass http://localhost:8080;
}
Alguma idéia de por que eu estou constantemente criando novos jsessionids?