Session过期时间无效问题--测试

一、影响因素

  • Tomcat web.xml
    Tomcat 下conf文件夹中web.xml配置文件中的session-timeout参数会影响session时间
  • 项目配置中的web.xml
    项目配置中的web.xml配置文件中的session-timeout参数可能会影响session时间
  • redis中的session
    redis中的sessoion过期时间可能会影响session过期

二、测试步骤

  • redis中session的影响
  1. 修改数据库中redisExpiretime的配置
    修改数据库EDCC03中redisExpiretime的配置为60,通过client查看后发现session的TTL时间不会产生变化,是项目里设置好的8小时,以上操作证明session过期和该配置无关。
  2. redis中session过期,浏览器中未过期
    在redis client中修改session的TTL时间,时间到期后,刷新页面,没有跳转至登陆页面,原session将会重新添加到redis中并重置过期时间。
  3. redis中session未过期,浏览器中session因项目中web.xml或重启项目过期
    过期后刷新页面后。跳转至登录页,登录后,redis会丢弃原有的session,替换成新的session。
  4. redis中session未过期,浏览器中session因项目中web.xm未过期
    每次进行操作后会进行redis中的sessionTTL时间重置
    以上操作证明页面session过期与redis中储存的session并非强关联。
  • tomcat中session-timeout的影响
    修改tomcat中的web.xml参数session-timeout,在项目中存在web.xml配置文件时不生效,仍然根据项目中的web.xml配置的参数丢弃session数据。
  • 项目中session-timeout的影响
    设置WEB-INF/web.xml中session-timeout的时间为2min,在画面运行2min中后,刷新页面需要登陆页面。项目中的web.xml配置生效。

三、测试结论

  1. 项目下web.xml配置的session-timeout优先级高于tomcat下web.xml配置的session-timeout
  2. session过期时间与redis中的配置的session过期时间无关

四、建议配置

建议项目的web.xml中session-timeout参数配置为10080(七天),EDCC03中redis过期时间(iplat.core.cache.redisExpireTime)配置为604800000

五、问题

  • sessionId篡改
    问题现象:
    在同一个服务器下,使用不同tomcat、不同的端口(8080,18080)、不同的redis(6379,6380)、不同的mysql数据库(iplat/iplatdb,iplattest/iplattestdb),启动两个iplat项目,分别访问127.0.0.1:8080/iplat和127.0.0.1:18080/iplat,用户在同一浏览器上,开启两个tab页,分别访问127.0.0.1:8080/iplat和127.0.0.1:18080/iplat登录页,登录进入8080端口的iplat之后,再登陆18080端口的iplat,原来8080端口的iplat需要重新登陆
    原因分析:
    经调试发现,浏览器访问127.0.0.1:8080/iplat服务时,前端浏览器生成的sessionId为A;当同时使用浏览器访问127.0.0.1:18080/iplat服务时,前端浏览器生成的sessionId为B,且127.0.0.1:8080/iplat页面的sessionId也变成了B;因此当127.0.0.1:8080/iplat页面再次刷新时,后台用sessionId B做校验时,session不存在及需要重新登录。由于两服务部署在同一服务器上,仅端口不一致,因此两服务相同域,猜测4j在生成sesion和进行sesion校验时,同域下session相同。同时,使用非同域的两iplat服务进行佐证,发现sessin未出现相互影响!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容