1、asp 中默认 session 过期时间为 20 分钟,很多情况下不够,今天有客户要求很多就要重新登录了,所以准备了这篇文章,方便需要的朋友。如果程序中没有设置 session 的过期时间,那么 session 过期时间就会按照 IIS 设置的过期时间来执行,IIS 中 session 默认过期时间为 20 分钟, IIS 中 session 时间可以更改时间设置要放在前面 例如Session.Timeout=30 SEESION 有效时间为 30 分钟 Session(“ID“)=Rs(“id“) Session(“Name“)=Rs(“Name“) Session(“Pass“)=Rs(“
2、Pass“利用 Session.Timeout 属性设置超时时限 对于一个登录到 ASP 应用程序的用户,如果用户在系统默认的时间内未进行其它任何操作,当设置的时间一到便自动撤销这个用户的 Session,这样就可以防止系统的资源被浪费。Session 对象的 TimeOut 属性可以用来设置“过期时间” ,已分钟为单位,其设置格式为:代码如下:Session.TimeOut=MaxTime实例代码:(5.asp)页面,本实例说明如何控制会话的结束。代码如下:控制会话的结束时间 你的会话标识为: “ 即可临时修改某页面的会话过期时间。 查看某个 Session 的过期时间,可以用代码如下:Ti
3、meSpan SessTimeOut = new TimeSpan(0, 0, System.Web.HttpContext.Current.Session.Timeout, 0, 0); TimeSpan SessTimeOut = new TimeSpan(0, 0, System.Web.HttpContext.Current.Session.Timeout, 0, 0);其中,二和三的设置,体现在 Web.config 中即:view plaincopy to clipboardprint? 以上四处设置的优先级为页面级应用程序级网站级 服务器级。换句话说,如果页面设置为 20 分钟,
4、网站设置为 120 分钟,那么,显然以 20 分钟为生效的过期时间。 另外一个值得注意 的地方。 在设置二处,设置会话超时(SessionState)120 分钟,而同时用 forms 认证,设置为“00:15:00”,即 15 分钟,并且 slidingExpirationo 为 false,则真正生效的 Session 过期时间是多少呢? 有效的结果是 SessionState 的设置,即 120 分钟。 如果有设置 Session 过期时间没有生效的,请检查以上几处配置 网上找到的其它方法 1、操作系统:Widnows Server 2003 步骤:开始管理工具Internet 信息服务
5、(IIS)管理器网站默认网站右键“属性”主目录配置选项 启用会话状态会话超时(在这儿设置你要的超时时间,单位分钟) 。确定即可。 2、ASP.NET 应用程序中 Session 过期时间的设置 在 ASP.NET 这样的 Web 应用中,Session 是用来保存用户状态的常用手段,不过由于服务器内存空间是有限的,所以 Session 过期时间设置是很有必要的。在 ASP.NET 中如何设置 Session 的过期时间呢,很简单,修改 web.config 配置。 具体修改方法如下,在 web.config 中进行如下配置在这里指的是 Session 过期时间为 30 分钟。也就是说 30 分钟后如果当前用户没有操作,那么 Session 就会自动过期了。 3、在调用 Session 的 cs 页中,Load 事件里面写以下Session.Timeout = 30;4、Store session in state service