[Bug]IE11下,forms认证,出现无法保存cookie的问题
目录
ie11
在ie11下,访问服务器上的网站地址,莫名其妙的多出一串东西,这一串字符串是由于客户端禁用cookie造成sessionid无法写入cookie,所以就拼在url上面了:
http://192.168.80.90:8003/(F(f7MHPrEbtCN867LFxf9VSLQnzHRsU41jVEYkBT6WTAbyiBlFGeJrLDnvj7cI4M8fEUPPwoqLANdfLxb7ydCt6vOPDxh9rP2ssg9L7-xvSpaEV2pE6eIW9foWcMbw6MMQAcTU2ClXOHggMGGbhzv-MA2))/GroupZone/TopicManager.aspx?groupID=137197c1-c13d-4580-8a46-1535e639feaf
如图所示:
也可以看一下forms验证FormsAuthentication.SetAuth方法:
//
// 摘要:
// 为提供的用户名创建一个身份验证票证,并将该票证添加到响应的 Cookie 集合中或 URL 中(如果使用的是无 Cookie 身份验证)。
//
// 参数:
// userName:
// 已验证的用户的名称。这不必映射到 Windows 帐户。
//
// createPersistentCookie:
// 如果为 true,则创建持久 Cookie(跨浏览器会话保存的 Cookie);否则为 false。
//
// 异常:
// System.Web.HttpException:
// System.Web.Security.FormsAuthentication.RequireSSL 为 true 且 System.Web.HttpRequest.IsSecureConnection
// 为 false。
public static void SetAuthCookie(string userName, bool createPersistentCookie);
正常应该是
http://192.168.80.90:8003/GroupZone/TopicManager.aspx?groupID=137197c1-c13d-4580-8a46-1535e639feaf
解决方案
方案1:
查找了网上的说法,说是客户端浏览器禁用cookie造成的,然后在web.config中添加cookieless=“UseCookies”
<authentication mode="Forms" >
<!--ie11 禁用cookie,解决方案-->
<forms cookieless="UseCookies" loginUrl="~/GroupZone/Login.aspx" timeout="1000"></forms>
</authentication>
修改后的浏览,如图所示:
ie11配置:(为了不修改客户端浏览器的配置可以修改网站的web.config)
方案2:
虽然上面的解决方案解决了的问题,但是页面的样式还是错乱的,导致页面上的一些服务器控件无法使用。在服务器.net framework的版本为4.0,将版本升级到4.5,重启电脑解决问题,配置文件中也不需要修改了,样式也正常了。
总结
这个问题折磨我两天了,今天终于解决了,各种办法都尝试了,最后没办法了,将服务器中.net framework给升级了。反而问题解决了,无语了。
[Bug]IE11下,forms认证,出现无法保存cookie的问题的更多相关文章
- IE11下Forms身份认证无法保存Cookie的问题
ASP.NET中使用Forms身份认证常见的做法如下: 1. 网站根目录下的Web.config添加authentication节点 <authentication mode="For ...
- [转]IE11下Forms身份认证无法保存Cookie的问题
本文转自:http://www.cnblogs.com/jaxu/p/3698377.html ASP.NET中使用Forms身份认证常见的做法如下: 1. 网站根目录下的Web.config添加au ...
- IE11下ASP.NET Forms身份认证无法保存Cookie的问题
IE11下ASP.NET Forms身份认证无法保存Cookie的问题 折腾了三四天,今天才找到资料,解决了. 以下会转贴,还没来得及深究,先放着,有空再学习下. ASP.NET中使用Forms身份认 ...
- IE10,IE11下cookie无法写入问题
asp.net 4.0的程序,发布后,测试在ie6,ie7,ie8,ie9下均可以正常登录,但是在ie10,ie11下就是无法保存cookie,排查了一下是否ie10,ie11是否存在设置问题发下并不 ...
- asp.net forms认证
工作中遇到的asp.net项目使用forms认证.以前虽然用过,但其原理并不了解,现在甚至对什么是form认证也完全不知道了.对一样东西如果不清楚其原理,不知其所以然,那么死记硬背是无济于事的. as ...
- 在asp.net WebAPI 中 使用Forms认证和ModelValidata(模型验证)
一.Forms认证 1.在webapi项目中启用Forms认证 Why:为什么要在WebAPI中使用Forms认证?因为其它项目使用的是Forms认证. What:什么是Forms认证?它在WebAP ...
- FormsAuthentication 登录兼容 IE11 保存cookie
现象:使用FormsAuthentication进行登录验证,在IE11客户端无法保存cookie 解决方法:在web.config中的forms中增加cookieless="UseCook ...
- asp.net权限认证:Forms认证
asp.net权限认证系列 asp.net权限认证:Forms认证 asp.net权限认证:HTTP基本认证(http basic) asp.net权限认证:Windows认证 asp.net权限认证 ...
- IE下无法保存Cookie和Session问题
最近在做新的Web项目时,因为一个验证码无法保存在Cookie中,或者更确切地说是IE下无法保存Cookie的问题纠结了整整一天时间,考虑了多种原因,单步调试了不下三十次,也没有结果.甚至在无奈之下改 ...
随机推荐
- react项目中遇到的一些问题
推荐使用facebook官方构建工具create-react-app来创建React基础工程.(然而我还是手动构建) (路由)官方旧版本和V4的比较.https://github.com/ReactT ...
- Oralce Spatial
1.建立数据库连接 create public database link ytlink connect to hightop identified by hightop using '(DESCRI ...
- overflow属性在IE6下面失去效果
自然状态下 overflow的属性设置,本来是超过了一定的长度时会自动产生滚动条,但是在ie6下面失效了. 例如:原来的代码: .code{overflow-x:auto;margin:5px aut ...
- Single Number I&& II——还没看,倒过头来再看
Single Number I Given an array of integers, every element appears twice except for one. Find that si ...
- JS获取 KindEditor textarea 标签 html内容失败的解决方法。
KindEditor 这个 东西 研究的不多,JS在通过调用getElementById 获取文本id的内容时候,KindEditor 尚未将内容同步,官方给的解决方法是afterBlur: func ...
- linux 进程命令小结
top:动态查看进程的变化 ps:将某个时间点的进程运行情况选取下来 ps -l :仅查看自己的bash相关进程 ps -aux :查看系统所有的进程 pstree :列出目前系统上面所有的进程树的相 ...
- [thinkphp] 无限极分类
<?php /* * 无限极分类 类 */ header("Content-Type: text/html; charset=UTF-8"); Class Category ...
- js string trim实现
String.prototype.trim = function() { var str = this, whitespace = ' \n\r\t\f\x0b\xa0\u2000\u2001\u20 ...
- mysql查看表结构,字段等命令
mysql查看表结构命令,如下: desc 表名; show columns from 表名; describe 表名; show create table 表名;
- 洛谷P2280 [HNOI2003] 激光炸弹 [前缀和]
题目传送门 题目描述 输入输出格式 输入格式: 输入文件名为input.txt 输入文件的第一行为正整数n和正整数R,接下来的n行每行有3个正整数,分别表示 xi,yi ,vi . 输出格式: 输出文 ...