cookie覆盖问题
来源:互联网 发布:钢琴谱打印软件 编辑:程序博客网 时间:2024/06/06 16:49
一、问题现象
最近在做手机触屏版的项目,部署完后发现一直让重复登录的问题,其中cookie中的JSESSIONID是不断变化的,也就是说发生了cookie覆盖的问题。
二、问题原因
由于触屏版通过调用pc端接口的方式获取数据的,而两者的域是相同的,只是端口不同,因此后者将前者的cookie覆盖了
三、问题解决
参考http://my.oschina.net/eastwmt/blog/151596
今天遇到个问题,登陆本系统,调用对方的一个链接(action),打开了一个新的浏览器窗口。然后回到我的网站,点击任何一个东西,都会回到登陆页面。
使用firefox看了下,在点击链接前和链接后的JSESSIONID是不同的
本页面:
调阅后的页面:
发现JSESSIONID的值变化了,而有些意外的是调阅地址的域竟然也是168.88.100.42.经过以下博文的查阅
http://www.cnblogs.com/ibook360/archive/2011/12/15/2288666.html
http://blog.shilimin.com/338.htm
找到了问题解决方案,在tomcat7的配置文件server.xml中修改JSESSIONID的名字,来解决冲突。
1
<
Engine
defaultHost
=
"localhost"
name
=
"Catalina"
><
Context
docBase
=
"healthDocW3"
path
=
"/DocW3"
reloadable
=
"true"
source
=
"org.eclipse.jst.jee.server:DocW3"
sessionCookiePath
=
"/DocW3"
sessionCookieName
=
"JSESSIONID1"
/></
Host
></
Engine
>
效果如下,原来的JSESSIONID被JSESSIONID1所代替
后来发现必须在启动后才能修改server.xml,故将其配置写入context.xml
1
<Context docBase=
"DocW3"
path=
"/DocW3"
reloadable=
"true"
source=
"org.eclipse.jst.jee.server:DocW3"
sessionCookiePath=
"/DocW3"
sessionCookieName=
"JSESSIONID1"
>
如果没有指定的项目可以配为
1
<
Context
sessionCookiePath
=
"/"
sessionCookieName
=
"JSESSIONID1"
>
直接将server.xml中的修改即可,发现有两个了
0 0
- cookie覆盖问题
- COOKIE问题
- COOKIE问题
- cookie问题
- cookie问题
- cookie问题
- select元素覆盖问题
- 棋盘覆盖问题
- 棋盘覆盖问题
- window.onload覆盖问题!
- 棋盘覆盖问题
- 棋盘覆盖问题
- 瓷砖覆盖地板问题
- 棋盘覆盖问题
- 派生 名字覆盖问题
- 瓷砖覆盖问题
- memcpy的覆盖问题
- window.onload覆盖问题!
- 保证数据完整型 1
- zookeeper 安装 windows环境
- 安卓蓝牙USB连接热敏打印机二
- jQuery ajax - ajax() 方法
- 解决 iphone 下面 input type="search" 弹出虚拟键盘 不能显示 搜索 问题
- cookie覆盖问题
- git管理汇总
- struts2.1.8和hibernate4.3.11整合遇到的问题
- 挂载3T移动硬盘(已解决)
- 调用android的摄像功能
- 01_04_Linux操作系统基础
- HBase Log Splitting(日志拆分)
- Sicily 1159. Sum
- Eclipse的go语言环境配置