Tomcat 7 的domain域名配置,Tomcat 修改JSESSIONID
来源:互联网 发布:全国省份数据库 编辑:程序博客网 时间:2024/06/14 21:36
应用场景:
公司有站点 www.shanhy.com、tow.shanhy.com、three.shanhy.com ……,站点使用 SpringMVC + Shiro + Redis 来实现的 session 子域共享。
Shiro 中设定的domain cookieName 为 SHAREJSESSIONID。
问题:
1、Tomcat 再没有做任何特殊配置的情况下(默认下载包),其session的CookieID为 JSESSIONID(sessionId 是通过浏览器Cookie 来存储和传递的,这个不再多解释)。
2、我们访问 www.shanhy.com 主站时,Tomcat 的 JSESSIONID 在Cookie 中的Domain为 www.shanhy.com
目的:
1、让3个站点的sessionId 的CookieName 为 SHAREJSESSIONID
2、让站点的所有Cookie 默认在所有子域中共享,即Cookie 的Domain 为 .shanhy.com
实现:
1、修改Tomcat 的 conf/server.xml 文件,修改接近文件最下面的 <Context ………… />
元素,为例:
………………<Context sessionCookieDomain=".shanhy.com" sessionCookiePath="/" sessionCookieName="SHAREJSESSIONID" />………………
2、修改SpringMVC 集成Shiro 的 xml 配置文件,配置片段如下:
……… 集成 Shiro 的其他配置(忽略) ……… <!-- 指定本系统SESSIONID名, Tomcat默认为JSESSIONID。问题:与SERVLET容器名冲突, 如JETTY, TOMCAT 等默认JSESSIONID, 当跳出SHIRO SERVLET时如ERROR-PAGE容器会为JSESSIONID重新分配值导致登录会话丢失! --> <bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie"> <!-- 重新定义会话的cookie name --> <constructor-arg name="name" value="SHAREJSESSIONID" /> <!-- sessionId的path为 / 用于多个系统共享 sessionId --> <property name="path" value="/" /> <!-- 共享同一个主域 --> <property name="domain" value="shanhy.com"/> </bean>
0 0
- Tomcat 7 的domain域名配置,Tomcat 修改JSESSIONID
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- TOMCAT的域名配置
- Tomcat 的域名配置
- 03-TOMCAT的域名配置
- tomcat的域名以及多域名配置
- tomcat的域名以及多域名配置
- tomcat修改jsessionid在cookie中的名称
- 修改tomcat域名
- 使用Tomcat配置域名
- Tomcat域名配置
- 最大公约数的计算____C++
- java语言基础(22)——面向对象(匿名对象的使用)
- <39>python学习笔记——键盘鼠标
- Mybatis如何加载配置文件 源码解读parameterType
- oracle重置密码(假如你忘记自己密码)
- Tomcat 7 的domain域名配置,Tomcat 修改JSESSIONID
- java.lang.NoClassDefFoundError: feign/Logger
- python 基础教程 xml
- java利用循环打印空心菱形
- 从OSI网络体系结构提出 到 TCP/IP体系结构的应用
- C++继承属性
- python 基础教程 xml
- 第一个iPhone程序开发
- python去除slice和list的重复元素