...... upstream 10.15.97.136 { server 10.15.97.133:443 weight=5 max_fails=3 fail_timeout=30s; server 10.15.97.132:443 weight=5 max_fails=3 fail_timeout=30s; } ...... server { listen 443 ssl; ..... location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto https; proxy_redirect http:// $scheme://; proxy_pass https://10.15.97.136/justin/; proxy_cookie_path /justin/ /; #这里的路径要注意对应关系 proxy_set_header Cookie $http_cookie; }
上面配置就能轻松实现代理,因为原始路径和代理路径发生了变化,致使 session 丢失,服务端获取的 session无效。若是路径代理路径和原始路径发生改变,就必须告诉服务器,加上路径转换proxy_cookie_path /edr /;能够将/edr的cookie输出到/上,Tomcat的session正常了。html
若是须要更复杂的路径转换可用通配符的方式进行转换,详情要查看http://nginx.org/en/docs/http/ngx_http_proxy_module.html?&_ga=1.161910972.1696054694.1422417685#proxy_cookie_path了。nginx