本人用.net 3.5 Windows 2008开放了个站点碰到串session问题, 问题现象是这样:用户A用A电脑正常登陆后,用户B在B电脑(不同地理位置)正常登陆。 这时如果用户A退出后,用电脑A登陆用户A,登录后会显示用户B的名字。 只会显示名字,用户相关数据为空。站点服务器访问外网没有之前通过代理访问外网,现已取消,但问题依然存在。补充:应该不是代码问题,同样的代码,站点部署到另外一个网络环境下,所有都正常;之前怀疑是因为站点的访问外网需通过代理的问题。 现已把代理取消, 登录时,SESSION串号的问题依然存在。出问题时sessionId值正常想问下各位大虾是否碰到过同样串号问题? 可能由网络环境中哪些导致? 希望能说的具体点,能提供解决办法最好。谢谢各位!!!!

解决方案 »

  1.   

    Session是依靠sessionId来区别的,如果sessionId不同,是不会串号的。你的代码存在问题。或者使用了static类型的变量
      

  2.   

    Session是依靠sessionId来区别
    关键  请检查自己的代码~
      

  3.   

    Session数据保存在服务器端, 但是每一个客户端都需要保存一个SessionID, SessionID保存在Cookies中, 关闭浏览器时过期.
    在向服务器发送的HTTP请求中会包含SessionID, 服务器端根据SessionID获取获取此用户的Session信息.
    两用户使用同一机器先后登陆系统,并且没有处理意外关闭或者两用户同时在线情况  
    存在session串值问题  
    在同一台电脑上登录,同一session域里session就可能串值,后面覆盖前面session  
      

  4.   

    不好意思,就是你的代码问题。 sessionid 是唯一的,你2个不同的电脑怎么可能串号?--------------------可以肯定是 你在保存sessionid 然后给 变量赋值的时候出了问题。
      

  5.   

    你在保存session信息, 然后给 变量赋值的时候出了问题
      

  6.   

    估计是用了static 静态变量导致的  session 怎么可能会出现这样的问题了你的用户ID 应该是唯一的啊
      

  7.   

    感觉应该是 static 这个问题