nginx + tomcat 导致session丢失的问题
来源:互联网 发布:宝鸡广电网络营业厅 编辑:程序博客网 时间:2024/04/27 00:26
niginx 在做反向代理的时候,如果代理的目录地址和用户访问的目录地址不在同一个层级下的时候,即
server { listen 80; server_name www.bzf.com;location / { proxy_pass http://127.0.0.1:8090/sso;}}
如上所示,若用户访问 www.bzf.com,则会被nginx代理到本地8090端口下的sso项目下,
tomcat是通过cookie中的JsessionId来判断是否是一个新用户的,使用上述代理方式时,tomcat会将JsessionId写入www.bzf.com域名下的/sso路径下面。
用户下次再访问 www.bzf.com 的时候,发送给服务器的请求拿不到 /sso 路径下的 JsessionId,因此tomcat 会一直认为是一个新用户,这从/sso 路径下的 JSessionId会一直变化也可以看到。
上述分析表明,我们要让用户拿到它上次写入的JsessionId才可以,因为用户访问的域名是 www.dzf.com,这我们不能改变,因此应改变保存JSessionId的cookie的路径,将该路径变为 “/” 即可,这可通过nginx 的 proxy_cookie_path 来设置,将 tomcat 写入的 /sso 路径下的cookie 变为"/"路径下,添加两行代码如下:
server { listen 80; server_name www.bzf.com;location / { proxy_pass http://127.0.0.1:8090/sso; proxy_cookie_path /sso/ /; proxy_cookie_path /sso /;}}
0 0
- nginx + tomcat 导致session丢失的问题
- nginx + tomcat 导致session丢失的问题
- nginx + tomcat 导致session丢失的问题
- 解决nginx中proxy_pass到tomcat的session丢失问题
- 解决nginx中proxy_pass到tomcat的session丢失问题
- 解决nginx中proxy_pass到tomcat的session丢失问题
- nginx tomcat session丢失
- Nginx Tomcat Session 丢失 改变
- 解决nginx中proxy_pass到tomcat的session丢失问题:补充
- 两个应用相互调用导致的session丢失问题
- nginx反向代理(proxy_pass)tomcat导致session失效的问题解决
- nginx使用proxy_pass反向代理时,session丢失的问题
- nginx + tomcat ,session共享的问题
- Session丢失的问题!
- Response.Redirect导致session丢失的解决办法
- 多个tomcat没有apache管理会导致session丢失
- 一个服务器搭多个tomcat导致session丢失,或者同一个IP不同端口,多个应用的session会冲突解决方法
- 一个服务器搭多个tomcat导致session丢失,或者同一个IP不同端口,多个应用的session会冲突解决方法
- 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求
- android-Content providers
- 蓝桥杯 基础练习 FJ字符串
- Linux常用命令记录
- Socket应用,简单聊天工具实现
- nginx + tomcat 导致session丢失的问题
- 笔记本电脑插入耳机只能外放,耳机没声音
- 回文数
- setlocal 与 变量延迟
- sublime text安装package control
- Android:eclipse 参数优化(解决内存够大,但是eclipse还是很卡)
- Recipes for Running Spark Streaming Applications in Production
- java基础学习——变量,java基本类型,运算符和表达式
- Map , List Android