zoukankan      html  css  js  c++  java
  • WebSphere服务器同一IP下多个应用sessionId覆盖问题

    同一IP下部署多个应用,访问A应用进行登录,登录后访问B应用,sessionId获取为NULL

    原文链接:https://my.oschina.net/moyuqi/blog/98475

    session是通过在客户端生成一个cookie,所有请求会带上这个cookie。一个cookie的NAME、Domain和Path属性值均相同,则会覆盖,若未设置Domain域,则域为ip(不包括端口),因此应用A的session被应用B的session覆盖了。

    经测试:tomcat、weblogic、websphere的session默认都是JSESSIONID 为key来识别的,因此在没有特别设置下,同一个域下的多个应用session会互相覆盖。 

    修改方式:将B项目server下属性Cookie名更改为B_JSESSIONID,重启server,获取sessionId成功.

    补充:关于IP  原文链接:https://my.oschina.net/ufopw/blog/892583

    问题描述:
    3个WebSphere集群,通过一个IP不同端口去访问,从A进入B,B可用,A的session丢失,点击A,B的session丢失,在WebSphere控制台不启用cookie和设置cookie路径均无效
    网上资料:
    IP相同的两个session对应的cookie是一样的,而不幸的是sessionID就保存在cookie中,这样先访问A,再访问B的时候,B的sessionid会覆盖A的sessionid。这个事情没办法解决,所以你不要搞两个端口,最好是搞两个IP。原来都是cookie惹的祸,它不会区分端口,造成这多个站点不断的后来的覆盖前面的,从而造成session的丢失。问题解决了,将相互有引用的应用架构在不同的虚拟主机中,或者映射不同的IP。

      

  • 相关阅读:
    Spring AOP 注解开发
    AOP的专业术语
    Java自定义注解的实现和应用
    Spring 声明式事务管理
    另一种线程安全机制:在事务管理中起到巨大作用的 ThreadLocal
    MySQL的二级索引
    数据库的范式化和反范式化
    MySQL为表字段添加索引
    mysql索引(二)----如何高效使用索引
    Alexnet网络
  • 原文地址:https://www.cnblogs.com/Yzzzzzzzzz/p/14262016.html
Copyright © 2011-2022 走看看