当前位置: 首页 > 编程语言 > C#

会话超时在asp.netmvc4C#中不起作用,为什么?

时间:2023-04-10 17:51:47 C#

会话超时在asp.netmvc4C#中不起作用。为什么?对于我的网站,我在web.config文件中配置了1周的登录会话超时这是登录代码[AllowAnonymous][HttpPost]publicActionResultLogin(stringLogin,stringPassword){//空密码是不允许的(密码=="")returnRedirect(Request.UrlReferrer.ToString());boolLoginResult=WebSecurity.Login(Login,Password,true);返回重定向(Request.UrlReferrer.ToString());我已登录,关闭浏览器并再次打开它转到我的网站->用户已登录。我关闭浏览器,等待一段时间(大约30分钟)转到我的网站->用户已注销。为什么?会话应该存储7天,但我们连30分钟都没有。谁可能是问题的根源?编辑1主要想法是我想在几天后回到该站点并仍然以登录用户打开它可能,您的IIS配置了20分钟的超时。将IIS会话超时更改为1周24小时,希望这能解决您的问题。看这个根据设计,超时的最大值设置为24小时。查看Microsoft支持论坛要实现更大的超时窗口,请考虑按照@Marc的建议在SQL中维护会话状态。尝试将会话状态移动到Sql(此处链接)。这应该持续IIS重新启动/应用程序池回收等。网站Session.Timeout仅在小于应用程序池会话超时值时才有效;因为每当达到应用程序池会话超时值时,该特定应用程序池将重新启动。http://www.codeproject.com/Articles/113287/Why-Session-Timeout-is-not-working-for-your-websitIIS可能会在应用空闲时关闭(一段时间内没有请求).这会破坏所有会话。身份验证将其数据存储在数据库中,因此它在重启后仍然存在。以上就是C#学习教程:Sessiontimeoutdoesnotworkinasp.netmvc4C#。为什么?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: