前几天,我们在开发工作流的过程中出现了一个比较奇怪的问题,原本看不到流程的人员,在登陆后却能够看到对应流程的待办任务,并且导致流程流向混乱!在调模式下调试程序发现(假设登陆两个用户)第二个登陆用户的信息覆盖了第一个登陆用户的信息,并且在IE8/IE10浏览器中也是这样的情况(打开不同的窗口登陆,然后刷新,显示的登陆用户的信息总是的二个用户的)不过火狐浏览器却没有这样的情况!问题就比较明确了,是IE seesion共享引起的问题!网上百度了一下,关于此问题的信息还是比较多的!下面是一段比较详尽的分析及问题的解决方案!

转自:http://blog.csdn.net/zwhfyy/article/details/8281241

在Web应用程序中浏览器很重要,Web程序依赖浏览器。微软之前的IE版本,如IE6、IE7, 如果同时打开两个窗口会产生两个会话,彼此互不影响。但在IE8、IE9中情况截然不同,IE8、IE9存在SESSION共享的问题,虽然可同时打开多 个窗口,但他们共用了一个会话。

Session共享给应用程序带来了很大的方便,但在带给用户方便的同时,也给应用程序带来了一定的风险。尤其是企业级的应用程序,一旦出现数据错误,可能带来严重的后果。
除了开发人员在应用程序开发过程中要注意并利用浏览器的这个特性外,测试人员和用户也应该了解此特性,通过人为控制浏览器的这一特性,使浏览器的这个特性更好的为我们服务。

当然,微软为我们提供了很好的解决办法,通过下列方法打开的窗口不会共用会话:
第一种: 
用户通过菜单 文件 > 新建会话(或File > New session)打开新窗口

第二种: 
使用命令行参数 iexplore.exe -nomerge 打开浏览器

第三种:
修改浏览器的快捷方式属性,在 C:\Program Files\Internet Explorer 文件夹下,通过iexplore.exe
新建一快捷方式至桌面,在桌面的快捷方式上点击右键选择属性,修改“目标”为 "C:\Program Files\Internet
Explorer\iexplore.exe" -nomerge 
通过此快捷方式启动的浏览器不会共享会话。

第一种和第三种比较容易接受而且易于使用,建议普通用户使用第一种(从不共享Session),只需要修改一次,操作简单。

测试人员在测试Web应用程序时,如果需要同时使用多个用户登录同一Web站点进行测试,那么必须修改此属性,否则数据经常会出现混乱。用户也是如此,如果需要同时在同一Web站点登录多个用户,同样必须修改此属性,以保证数据的准确。

IE的这一属性,应该写入用户手册的注意事项中。

http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/Servlet-Tutorial-Session-Tracking.html

http://www.iefans.net/ie7-ie8-session-cookie-gongxiang-qubie/

IE SEESION共享的问题的更多相关文章

  1. redis 存储session实现session共享

    nginx 作为代理 tomcat集群 redis存储共享session nginx采用轮询方式将动态请求反向代理给tomcat,tomcat通过加载相应jar包方式实现获得redis中共享的sess ...

  2. 基于Redis缓存的Session共享(附源码)

    基于Redis缓存的Session共享(附源码) 在上一篇文章中我们研究了Redis的安装及一些基本的缓存操作,今天我们就利用Redis缓存实现一个Session共享,基于.NET平台的Seesion ...

  3. Cookie与Seesion的作用

    1.什么是Cookie与Session? cookie:首次访问服务器,服务器返回cookie置浏览器,存到用户电脑.之后去访问同一服务器,浏览器会携带相应cookie判断是否是同一浏览器的访问,告知 ...

  4. 如何实现集群中的 session 共享存储?

    Session 是运行在一台服务器上的,所有的访问都会到达我们的唯一服务器上,这 样我们可以根据客户端传来的 sessionID,来获取 session,或在对应 Session 不 存在的情况下(s ...

  5. 浅析HTTP协议

    HTTP协议是什么 HTPP协议是一种网际层协议,HTTP协议是无状态的,HTTP协议对用户是透明的. 每一次HTTP请求都是一次事务,一个HTTP事务是由一条请求命令和一个响应结果组成的,HTTP通 ...

  6. redis总结问题

    简单回顾了redis,在这过程中 首先得了解redis是什么,redis的运用场景,redis支持哪些数据格式,redis如何操作数据,redis如何实现高可用 redis是什么: Redis 是一个 ...

  7. 性能优化系列四:Tomcat优化

    一.Tomcat工作原理 1. TCP的三次握手四次挥手 三次握手: 说明: 类比于A和B打电话: A对B说:你好,我是A,你能听到我说话吗? B对A说:嗯,我能听到你说话 A对B说:好,那我们开始聊 ...

  8. 面试题--CVTE

    2.HashMap和HashSet的实现原理,hashset 和hashMap区别 HashSet底层就是HashMap实现的, *HashMap* *HashSet* HashMap实现了Map接口 ...

  9. springboot序

    springboot序 1.写在前面 (1) 前段时间把文章分了下类(说的是专栏,谈不上),分了三类:springboot.springcloud.mpp数据库greenplum,后来给springc ...

随机推荐

  1. python学习-day11-内建函数

    python-内建函数 -int:将字符串转换为数字 a = " print(type(a),a) b = int(a) print(type(b),b) num = " v = ...

  2. 事件日志ID 2511:服务器服务无法重新创建 <sharename> 共享关系,因为 <address> 目录已不再存在

    服务器服务无法重新创建 QQMusicDownload 共享关系,因为 D:\QQMusic\QQMusicDownload 目录已不再存在.请运行 "net share QQMusicDo ...

  3. HTML ISO-8859-1 参考手册

    HTML 4.01 支持 ISO 8859-1 (Latin-1) 字符集. ISO-8859-1 的较低部分(从 1 到 127 之间的代码)是最初的 7 比特 ASCII. ISO-8859-1 ...

  4. ASP.NET MVC之从控制器传递数据到视图四种方式

    前言 本系列开始着手讲述ASP.NET MVC,也算是自己对基础的回顾以及进一步深入学习,保证每天发表一篇该系列文章,关于基本知识则不再叙述,园子有关文章不胜枚举,这一系列若有叙述不当或错误之处,欢迎 ...

  5. SOA_环境安装系列5_Oracle ADF安装SOA Extensions(案例)

    2015-01-02 Created By BaoXinjian

  6. ICANN认证企业列表

    查询地址: http://www.internic.net/alpha.html

  7. SmtpClient 类

    1, SmtpClient 类 http://www.cnblogs.com/panlijiao/archive/2012/11/14/2773836.html

  8. 并发容器之ConcurrentSkipListSet

    概要 本章对Java.util.concurrent包中的ConcurrentSkipListSet类进行详细的介绍.内容包括:ConcurrentSkipListSet介绍ConcurrentSki ...

  9. gerrit 配置 apache2 反向代理(转载)

    Apache 2 Configuration To run Gerrit behind an Apache server using mod_proxy, enable the necessary A ...

  10. 适配6 、6P 来源互联网

    iPhone 6 6P出现后,如何将一份设计稿支持多个尺寸? 如何只出一套iOS平台设计稿?随着苹果发布两种新尺寸的大屏iPhone 6,下面三款iPhone尺寸和分辨率数据就知道屏幕有多杂了. 现在 ...