IE中用window.open() 新开页面,有时会丢失Session 的问题。
2004-12-10 17:22
393 查看
IE中用window.open() 新开页面,有时会丢失Session 的问题。
有关这个问题的详细描述,请参看:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;196383
我摘要如下:
其实不仅仅是丢失Session的问题,Authentication (用户验证信息)也会丢失。
这个问题出现的原因是因为 :
"Browse In New Process." 某些情况下,你打开IE的一个新进程,这些信息没有被同步过去。
解决方法当然是老套的及时打补丁。
上述文中,通过设置"Browse In New Process." 演示了这个问题。
在Win2003中,这个设置不在IE的 Internet 选项 -- 高级中(Win2003 IE6 中找不到这个设置),
而在资源管理器的 -- 文件夹选项 -- 查看 -- 在单独的进程中打开文件夹窗口。
如下图的设置:
设置好后,你在资源管理器中输入演示的ASP文件,(注意是资源管理器,不是IE)。点击 WindowOpen 按钮,你就有一定的概率,看到新开的页面跟原来的页面不是同一个Session。
以上演示是在升级了微软所有已知补丁后的Win2003上作的测试,如果是没打过补丁的版本,可能概率更高,我没有测试过。
演示用到的ASP文件,上面提到的URL中给出了,就不再重复。
有关这个问题的详细描述,请参看:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;196383
我摘要如下:
其实不仅仅是丢失Session的问题,Authentication (用户验证信息)也会丢失。
这个问题出现的原因是因为 :
"Browse In New Process." 某些情况下,你打开IE的一个新进程,这些信息没有被同步过去。
解决方法当然是老套的及时打补丁。
上述文中,通过设置"Browse In New Process." 演示了这个问题。
在Win2003中,这个设置不在IE的 Internet 选项 -- 高级中(Win2003 IE6 中找不到这个设置),
而在资源管理器的 -- 文件夹选项 -- 查看 -- 在单独的进程中打开文件夹窗口。
如下图的设置:
设置好后,你在资源管理器中输入演示的ASP文件,(注意是资源管理器,不是IE)。点击 WindowOpen 按钮,你就有一定的概率,看到新开的页面跟原来的页面不是同一个Session。
以上演示是在升级了微软所有已知补丁后的Win2003上作的测试,如果是没打过补丁的版本,可能概率更高,我没有测试过。
演示用到的ASP文件,上面提到的URL中给出了,就不再重复。
相关文章推荐
- IE中用window.open() 新开页面,有时会丢失Session 的问题
- IE中用window.open() 新开页面,有时会丢失Session 的问题
- Window.Open()新开页面有时会丢失Session (IE)
- 解决模式对话框和window.open打开新页面Session会丢失问题
- 解决模式对话框和window.open打开新页面Session会丢失问题
- 解决模式对话框和window.open打开新页面Session会丢失问题
- showModalDialog与window.open造成session丢失的问题
- 解决ie的window.open的referer丢失问题。
- 解决ie的window.open的referer丢失问题。
- 解决IE中window.open打开链接refer丢失的问题
- 解决ie的window.open的referer丢失问题。
- [工作问题总结]window.open导致IE自动关闭问题总结[1]
- 解决iframe窗体丢失Session时登录窗口显示在子页面的问题
- asp.net和php中用window.open打开的窗口session丢失的解决办法
- IE中使用IFrame或Frameset导致session丢失的问题
- window.open() 父子页面的传参&传值问题
- 解决js中window.open弹出的是上次的缓存页面问题
- 模式窗口window.open造成Session丢失的解决方法
- 用P3P header解决IE下iframe跨域访问时候session丢失的问题
- window.open()在IE中打开新窗体有时候打不开的问题