使用IE10登录,URL出现SessionId的解决办法
问题:用户登入之后,URL会出现一长串字符,类似SessionId,把这一长串字符删除之后重新进入页面,页面又会自动地跳转到登录页面,所以,应该是Session没记住用户已经登录的信息。
网站环境:
1、服务器端为Windows Server
2003,客户端用IE10以下版本登录不会出现此问题,只有用IE10登录会出现这问题。
2、如果服务器为Windows Server 2008,客户端用IE10也不会出现这个问题。
简单来说,这算是个 ASP.NET 2.0、3.5 与 4.0 的 Bugs,因为这两个版本无法识别 IE10 的
User-Agent 标头字串,所以无法正确识别用户端的 IE10 浏览器版本,因而导致 ASP.NET
特定功能失效,在这个例子中,出问题的地方在于 ASP.NET 以为浏览器不支持 Cookies 功能,所以 ASP.NET
将不处理任何与 Cookies 相关的代码!
以下是 IE10 的 User-Agent 标头字串:
User-Agent: Mozilla/5.0 (compatible;
MSIE 10.0
; Windows NT 6.2; Trident/6.0)
微软官方针对这个 Bug,发布了两个 Hotfix 专门用来解决这个问题,各位如果遇到一样的问题可以参考以下两篇 KB 说明:
KB2600088:
修补程序是可用于在 Microsoft.NET Framework 4.0 中的 ASP.NET
浏览器定义文件
KB2608565:
修补程序是可用于在 .NET Framework 3.5.1 中的 ASP.NET
浏览器定义文件
KB2600100:
修补程序是可用于在 .NET Framework 3.5 SP1 与 .NET Framework 2.0 SP2
中的 ASP.NET 浏览器定义文件
在此分享一个更简易的解决方法,只要在网站目录新增一个浏览器定义档 (browser definition file)
即可解决此问题,步骤如下:
1. 先在网站目录下新增一个 App_Browsers 文件夹
2. 新增一个文档名为 *.browser 的文件,例如:IE10Fix.browser,文件内容如下:
- <</span>browsers>
- <</span>browser refID="Default">
- <</span>capabilities>
- <</span>capability name="cookies" value="true" />
- <</span>capability name="ecmascriptversion" value="3.0" />
- </</span>capabilities>
- </</span>browser>
- </</span>browsers>
设定完成后,问题自然解决!
使用IE10登录,URL出现SessionId的解决办法的更多相关文章
- Tortoise-SVN 出现“unable to connect to a repository at url no element found”解决办法
安装要SVN server服务器后,建立自己的Repositories,创建自己的项目文件夹 如,https://xxxxxxxxxx.com:8443/ 安装Tortoise-svn进行设置目标链接 ...
- 电脑开机失败提示"用户配置文件服务登录失败"的三种解决办法
最近遇到这样一个怪现象,就是每次打开电脑输入密码,突然提示"User Profile Service 服务未能登录,无法加载用户配置文件",然后就没办法正常开机了,为什么会这样呢? ...
- url字符长度限制解决办法
前段时间,同事往系统上传相关文档,发现输入失败,找到了我了. 开始以为数据库字段属性问题,修改后未解决随调试系统,发现没有走到后台程序,发现 ajax没有传值,各种测试问题情况,后来同事发现是url字 ...
- ASP.NET项目与IE10、IE11不兼容的解决办法
1.解决办法 机器级别修复, 服务器所有ASP.NET程序受益 需要去微软下载对应asp.NET版本的修补程序 .NET 4 -http://support.microsoft.com/kb/2600 ...
- MySql无法远程登录以及IP被锁解决办法
授权 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '' WITH GRANT OPTION;Query OK, 0 rows aff ...
- discuz2.5登录后台闪退的解决办法
今天突然发现discuz2.5论坛后台进不去,开始以为密码错了,但发现登录后也是闪退.我试着清除浏览器cookie,也换了其他浏览器也没有用,还是上网找找吧! discuz2.5进入后台闪退的原因: ...
- linux系统root用户登录提示“鉴定故障”的解决办法
同事第一次创建虚拟机,遇到此问题,此前我未曾遇到,搜索到的解决办法记录在此,以防之后忘记. 一.重启系统解决(搜索到的该解决办法较多):https://www.cnblogs.com/lippor/p ...
- 帝国cms7.5忘记登录密码以及多次登录失败被锁定终极解决办法
其实网上很多忘记登录密码的解决方法都是相对于7.5版本以下的,在7.5的版本里根本不适用,今天小编主要给大家说的是针对帝国cms7.5忘记登录密码正确的解决办法. 前提是你能登陆服务器: 一.忘记登录 ...
- cas单点登录用户名为中文的解决办法
当用户名为中文时,登录后返回的用户名乱码.解决这个问题只需要在客户端的CAS Validation Filter中添加下配置就行了. <init-param> <param-name ...
随机推荐
- Table of Contents - Redis
Getting Started 安装配置环境 Redis 命令 Keys Strings Lists Hashs Sets Sorted Sets Transactions Connection Se ...
- android APP是否需要缓存?+简单架构
问题的由来 昨天,当我写完我的第一篇博客之后,我便百无聊赖的玩起了手机!当我打开Google自带的一些app的时候,发现他们直接叫我连接网络,并没有缓存上次从网络获取的数据.这就让我感到很奇怪!于是我 ...
- 在rdlc 中 显示成 yyyy年MM月dd日
在rdlc 中 显示成 yyyy年MM月dd日, 采用: =First(Format(Fields!添加时间.Value,"yyyy年MM月dd日") )
- Python Opearte MS-SQL Use Pymssql
看到很多的开源数据库会用到MySQL,Python同样也使用,但是我已经习惯使用图形化界面,操作感极强的MS-SQL 看到Python也提供MS-SQL连接方式,需要用到PyMssql. 在Windo ...
- php_2
form表单提交: <body> <form action="php_request2.php" method="post"> 姓名: ...
- idea基本
IntelliJ IDEA特色功能 IDEA所提倡的是智能编码,是减少程序员的工作,IDEA的特色功能有以下25点:智能的选取在很多时候我们要选取某个方法,或某个循环或想一步一步从一个变量到整个类慢慢 ...
- 将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m
给定两个数m,n,其中m是一个素数. 将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m. 输入 第一行是一个整数s(0<s<=100),表示测试数据的组数 随后 ...
- virtualbox安装增强包及配置共享文件夹
因为需要在host及虚拟机间传输数据,想使用共享文件夹.但是单独设置了共享文件夹后在centos里找不到共享文件夹,看了下要安装增强包.好吧,顺 便也解决下鼠标切换的问题,省的老是按右CTL切换 ...
- Linux下编译安装mysql-5.0.45.tar.gz
安装环境:VMware9(桥接模式) + Linux bogon 2.6.32-642.3.1.el6.x86_64(查看linux版本信息:uname -a) 先给出MySQL For Linux ...
- boost:program_options
由于系统库getopt和getopt_long用起来不够直观,仔细看了下boost发现Boost.Program_options可以满足我的需求,它和getopt系列函数一样,可以抓起命令行参数,这里 ...