asp.net – 会话超时在IIS 7中如何工作?
在web.config中,我将sessionState中的timeout设置为20分钟。根据MSDN,此超时指定会话在被放弃之前可以空闲的分钟数。在IIS 7中,DefaultWebSite->会话状态 – > Cookie设置 – >超时自动填充在web.config中设置的超时值,在我的情况下为20分钟。此外,应用程序池 – > DefaultAppPool->高级设置 – > idleTimeout,我将其设置为10分钟。
然后我做了两个测试: 第二个测试:我在下午4点登录我的网络应用程序,在下午4点05分,下午4点10分,下午4点15分,下午4点20点播放应用程序。我预计在下午4点20分被踢出。但我没有我认为IIS 7中的会话状态超时(20分钟)是Web Agent挑战用户重新认证之前,用户会话可以处于活动状态的最大时间。显然从这个测试,它不是。有人可以向我解释吗?另外,如何设置上述情况下的超时时间? 解决方法
会话超时是一个滑动超时,在每次访问服务器时,用户都将重置为配置的值。
如果在这段时间内没有请求您的应用程序,应用程序空闲超时将会启动。 因此,通常的情况是: Time | User A | User B | Session States ------+--------------+--------------+------------------------------------------- 12:00 | Visits Page1 | | A: New Session,Time-out: 20 minutes 12:02 | Visits Page2 | | A: Time-out reset: 20 minutes 12:10 | | Visits Page1 | A: Time-out: 12 min; B: New: 20 minutes 12:15 | | Visits Page2 | A: Time-out: 07 min; B: Time-out: 20 min 12:22 | | | A: times out; B: 13 min remaining 12:32 | | | Application Shuts Down (Idle time reached) 12:35 | Visits Page3 | | A: New Session Starts 如果用户A在12:22之后返回该站点,那么他们将有一个全新的会话,您之前存储的任何值都将丢失。 确保会话持续通过应用程序重新启动的唯一方法是配置SessionState服务或SQL会话状态,并确保您具有configured the machine.key,这样每次服务器重新启动时都不会自动生成。 如果您使用标准ASP.NET机制进行身份验证,则ASP.NET将向每个用户发出两个Cookie: >认证令牌:由Authentication time-out设置控制,如果cookie尚未过期,则允许用户自动登录到您的站点,这可以修复或滑动,默认为30分钟,这意味着他们的认证令牌可以应对比他们的会话更长的“闲置”期间。 这两个Cookie都使用MachineKey进行加密,因此如果您的应用程序回收并生成新密钥,那么这些令牌都不能被解密,要求用户登录并创建一个新的会话。 回应评论: > 20分钟的会话超时与您使用Session.Add(string,object)方法放置在用户会话对象(HttpSessionState)中的项目相关。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 重定向到一个页面,其endResponse为true VS Comp
- asp.net – 使用MvcBuildViews构建Razor = true失败
- asp.net-mvc – 我想调试(设置一个断点)System.Web.Mvc.Def
- 如果ASP.NET应用程序使用许多DLL,那么保持每个dll的配置分离
- asp.net-mvc – 使用ASP.NET MVC和Razor的Knockout.js
- asp.net – 如何处理Null(GridView Container.DataItem)
- 在ASP.NET中将MS Word文档转换为PDF
- asp.net-mvc – 如何在ASP.NET MVC和Entity Framework中扩展
- asp.net – asp:UpdateProgress – 保留换行符
- asp.net – 自定义部分的Web配置转换
- asp.net核心 – Asp.Net核心从url获取RouteData值
- asp.net-mvc – 如何建立一个ASP.NET MVC应用程序
- asp.net-mvc – Sitecore视图渲染和控制器渲染助
- asp.net – Repeater控件中的水平方向
- ASP.NET MVC删除操作链接确认
- asp.net-mvc – 如何将ASP.net身份角色放入Ident
- asp.net-mvc – MVC 4 ModelBinder
- asp.net-mvc – ASP.Net MVC支持嵌套资源?
- asp.net-mvc – ASP.NET MVC ActionResult背后的
- asp.net-mvc-3 – 使用mvc3下拉列表进行jquery自