好吧,我完全被这个难住了。这是 asp.net mvc3 web 应用程序的场景,几个月来一直运行良好,但我每周都在经历补丁和新版本的新功能。代码库本身在两个独立的 iis7 windows r2 服务器上运行。其中一台服务器,我不使用标准的应用程序池身份(网络服务) - 我有一个特定的用户,因为它从文件服务器中提取一些文件,因此也需要从该目录添加/删除特定权限。
在这台服务器上,它刚刚开始在 IE9 中 99% 的时间对表单身份验证进行疯狂操作,一两次我必须在 chrome 上执行此操作,但 chome/ff 通常表现得没有问题。
问题是,一旦您登录并转到另一个页面,它就会不断响应移动对象,并再次重定向到登录页面。(有时它甚至在登录时这样做)但是会话仍然有效,因为作为模板的一部分,它显示了基于用户身份验证的菜单项,调用如下
Context.User.IsInRole(xxxx)
Request.IsAuthenticated
我已经摆弄了它,cookie会话似乎很好,一切都按应有的方式设置。
但是,如果我做一个完整的 iisreset,ie9 将工作大约 5 分钟,然后每次请求都会失败,并重定向回登录页面。
我在 Web 应用程序中根本没有使用 iframe,我的 web.config 设置是
<sessionState mode="InProc" timeout="80" />
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="40" slidingExpiration="true" cookieless="UseCookies" />
</authentication>
已检查时间同步,并且客户端和服务器都在 1 秒内。
所以在这个阶段,我被卡住了,我不知道去哪里进一步排除故障,或者我可以尝试什么。如果需要,我可以远程调试服务器。
当我在我的开发盒上进行本地测试时,我没有看到任何问题。
谢谢,卡梅伦