0 0

一台机器,两个web项目,session丢失问题20

  问题描述: 有两个web项目,一个是webwork+spring+hibernate 结构,一个是zk+javabean+hibernate结构。 把两个项目布置在一台机器是时(不同tomcat,不同端口)。用浏览器登录一个项目地址后,再打开另外一个项目, 前面的哪个项目session会丢失
    通过检查cookie,发现这两个项目的sessionid是同一个,当打开第二个项目的时候,其sessionid被修改了。 
    问题很是郁闷,望je上高手能给予回答,不胜感谢

问题补充:
hyhLarry 写道
在项目a中把session放到servletContext中,在另一个项目中取出来就可以了!

不知道如何操作,能不能说得更详细一点,谢谢。
另外,是两个不同的tomcat, 所有servletContext应该有两个,而且两个项目的session是互相影响的,我的目标是想让他们分别独立,互不影响

问题补充:
hyhLarry 写道
应该是单点登录问题,你可以查一下这方面的知识(SSO),它就是解决多web程序共用一个的登录的问题!

说明一个,我是两个完全独立的web项目,不需要它们单点登录,需要他们两个项目session彼此独立。

问题补充:
stulance 写道
你如果是用IE8测试的话,就在可能是IE8的Session共享的机制造成的。

我看IE6,IE7,IE8和firefox3.6下统统出现了这种情况
2010年5月25日 15:25

6个答案 按时间排序 按投票排序

0 0

采纳的答案

估计你两个项目的访问域名是一样的。这样的问题在不同的浏览窗口中应该是不存在的
在同一浏览器窗口中,输入域名相同,但是目录不同的服务时。如果两个服务是互不关联的,应该在访问域名时针对不同服务使用不同的域名。
或者你的cookie应该是针对域下的某个特定目录的,而不是域的根目录。

在tomcat中,jessionid应该是默认写在域根目录下的。

2010年5月26日 10:19
0 0

你如果是用IE8测试的话,就在可能是IE8的Session共享的机制造成的。

2010年5月25日 22:15
0 0

就是在客户端保存客户信息,用cookies

2010年5月25日 16:58
0 0

应该是单点登录问题,你可以查一下这方面的知识(SSO),它就是解决多web程序共用一个的登录的问题!

2010年5月25日 16:58
0 0

在项目a中把session放到servletContext中,在另一个项目中取出来就可以了!

2010年5月25日 16:26
0 0

这种问题还真没碰到过
登录时带上sessionid试试看

2010年5月25日 15:53

相关推荐

    asp.net不同应用程序Session共享

    在IIS中,可以设置应用程序池的身份标识为同一用户,这样两个应用程序可以共享同一份文件系统资源,包括Session数据(如果存储在文件系统中)。不过,这种方法的安全性和扩展性较差。 **7. 考虑替代方案** 跨应用...

    msm集群session共享

    `msm集群session共享`是指在多个Tomcat服务器之间实现用户session数据的共享,以保证用户在集群中的任意一台服务器上都能保持登录状态和其他会话信息的连续性。这种技术常用于提升网站的可用性和负载均衡能力。 `...

    ASP.NET的 Session 详解

    试想,如果没有 SessionID,当有两个用户同时进行注册时,服务器怎样才能知道到底是哪个用户提交了哪个表单呢。 Session 的其他信息 除了 SessionID,在每个 Session 中还包含很多其他信息。但是对于编写 ASP 或 ...

    解决[removed].href之后session丢失的问题

    然而,在使用JavaScript的`window.location.href`进行页面跳转时,有时会出现Session丢失的问题,这可能导致用户在跳转后无法访问之前存储在Session中的数据。本文将探讨这个问题的原因及解决方案。 首先,我们需要...

    tomcat redis session.rar

    :“Tomcat集群Nginx使用Redis保证Session同步”这一场景中,通常是因为在多台Tomcat服务器组成的集群中,每个服务器各自维护独立的Session,当用户在集群中的不同服务器之间切换时,可能会导致Session丢失或冲突。...

    tomcat-session共享

    在构建分布式系统时,Session共享是一个关键问题,特别是在使用Linux上的Tomcat服务器集群与Nginx作为反向代理的情况。标题“tomcat-session共享”和描述中提到的问题,主要是指如何在多台Tomcat服务器之间以及通过...

    redis+tomcat实现session的jar

    描述中提到的是一个具体的操作过程,即通过源码编译打包生成适用于Tomcat7和JDK7的jar文件,表明这是一个适用于这两个特定版本的解决方案。这个jar文件应该包含了集成Redis与Tomcat session管理所需的所有组件,使得...

    tomcat85-session-redis工具jar包

    这样做的主要目的是提高应用程序的可伸缩性和高可用性,因为Redis可以跨多个服务器共享session数据,避免了单一服务器故障导致的session丢失问题。 描述中提到,这个工具包已经过测试,确保在Tomcat 8.0至8.5的范围...

    tomcat-redis-session-manager.zip

    使用Redis进行Session共享可以解决负载均衡下的Session粘滞性问题,使得用户在集群中的任何一台服务器上都可以继续他们的会话,提高了系统的可扩展性和可用性。 7. **注意事项**: 在实际部署中,需要考虑到Redis...

    Memcached_Session_Manager jar

    传统的基于内存的会话管理在服务器扩展时容易导致数据不一致或丢失,而 Memcached_Session_Manager 解决了这个问题。 **Memcached** 是一个高性能、分布式内存对象缓存系统,它可以存储任意的数据类型,包括字符串...

    分布式Session解决方案.docx

    通过以上步骤,就可以实现在分布式环境中基于Redis的Session共享,解决了跨服务器访问时Session丢失的问题。 总的来说,分布式Session管理是现代Web应用不可或缺的一部分,通过合理选择和实施解决方案,我们可以...

    tomcat-session同步所需jar.rar_session集群共享_tomcat session

    **Session集群共享**:在Tomcat集群中,session共享是为了确保用户在集群中的任意一台服务器上进行的操作,其他服务器都能识别。这通常通过以下两种方式实现: 1. **Session复制**:每当一个服务器上的session数据...

    nginx tomcat memcached 集群 session共享

    在构建高可用性和可扩展性的Web服务时,集群和会话共享是两个关键点。这里我们讨论的主题是如何通过Nginx、Tomcat和Memcached来实现集群环境下的session共享。Nginx作为反向代理服务器,负责负载均衡,Tomcat作为...

    nginx+redis负载均衡和session粘滞

    在构建高性能、高可用性的Web服务时,负载均衡和session管理是两个至关重要的环节。本教程将探讨如何在Windows环境中,利用Nginx作为反向代理服务器,Redis作为session存储,与Tomcat应用服务器配合,实现负载均衡和...

    ASP.NET Session的七点认识

    5. **异常处理**:在使用Session时进行适当的异常处理,以应对可能出现的Session丢失或数据不一致的情况。 总之,ASP.NET Session是构建交互式Web应用的重要工具,正确理解和使用Session可以帮助开发者提高应用的...

    session共享tomcat7 memcached 文档

    - 将所有Session数据集中存储在一个地方(如另一台服务器或数据库中),所有节点都从这里获取Session数据。 - 在集群中所有节点之间进行Session数据的同步复制,这样任何节点都可以访问所有Session数据。这种方式...

    tomcat-redis-session-manager-1.2-tomcat-6&7

    "tomcat-redis-session-manager-1.2-tomcat-6.jar" 和 "tomcat-redis-session-manager-1.2-tomcat-7-java-7.jar" 是针对Tomcat 6和Tomcat 7的Redis Session Manager实现,这两个jar文件提供了将Tomcat的session存储...

    Memcached+tomcat session共享jar 和tomcat xml配置

    例如,`mchange-commons-java`和`spymemcached`这两个依赖库,分别用于序列化和反序列化Session对象,以及连接和操作Memcached服务器。 描述中提到的"在tomcat8.0.26版本可以工作,更高版本不一定能工作",意味着...

    Asp.net做的计算器通过session 提交计算

    例如,用户在页面A上输入两个数字,点击“加法”按钮后,这些数值会被存储到Session中,然后跳转到页面B进行计算。在页面B的后台代码中,可以获取Session中的数值,进行加法运算,并将结果显示在页面上。这种方法...

    微信小程序sessionid不一致问题解决

    在微信小程序开发中,经常会遇到由于`sessionID`不一致导致的登录状态丢失问题,这主要是因为微信小程序的网络请求机制以及服务器端的会话管理方式。本文将深入解析这个问题,并提供解决方案。 首先,理解`session...

Global site tag (gtag.js) - Google Analytics