Tomcat 7 的domain域名配置,Tomcat 修改JSESSIONID

简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/catoop/article/details/64581325 应用场景:公司有站点 www.shanhy.com、tow.shanhy.com、three.shanhy.com ……,站点使用 SpringMVC + Shiro + Redis 来实现的 session 子域共享。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/catoop/article/details/64581325

应用场景:

公司有站点 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>
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
18天前
|
XML Java 应用服务中间件
Tomcat_servlet部署、编译、配置、打包
Tomcat_servlet部署、编译、配置、打包
21 0
|
2天前
|
缓存 网络安全 开发工具
【尝试】域名验证:配置github二级目录下的txt文件
【尝试】域名验证:配置github二级目录下的txt文件
10 2
|
2天前
|
网络协议
hexo博客6:自定义域名 购买、配置、更新部署
hexo博客6:自定义域名 购买、配置、更新部署
9 3
|
4天前
|
IDE Java 应用服务中间件
JDK1.6.0+Tomcat6.0的安装配置(配置JAVA环境)
JDK1.6.0+Tomcat6.0的安装配置(配置JAVA环境)
15 1
|
4天前
|
网络协议 Java 应用服务中间件
HTTP协议与Tomcat在IJ中配置
本文是对自己学习JavaWeb学习的笔记的总结,添加了一些自己的东西,然后进行一次复盘,并加深一下学习的理解和印象.其中内容主要包括对http协议的详细介绍,java常见服务器的初步介绍,以及IJ旧版和新版的tomcat服务器的配置图解教程
|
18天前
|
网络协议 Java 应用服务中间件
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
记录_centos7离线环境和虚拟机共享文件安装jdk和tomcat(配置环境变量)
11 0
|
19天前
|
应用服务中间件
【SSM】如何在IDEA配置tomcat启动项目
【SSM】如何在IDEA配置tomcat启动项目
18 1
|
19天前
|
网络协议 对象存储
阿里云oss配置自有域名
阿里云oss配置自有域名
24 1
|
19天前
|
IDE JavaScript Java
如何配置tomcat
【4月更文挑战第15天】如何配置tomcat
18 2
|
19天前
|
负载均衡 Ubuntu 应用服务中间件
Apache(mod_proxy)+Tomcat负载均衡配置
Apache(mod_proxy)+Tomcat负载均衡配置