asp中设置session过期时间方法总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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("Pass"

利用Session.Timeout 属性设置超时时限

对于一个登录到ASP 应用程序的用户,如果用户在系统默认的时间内未进行其它任何操作,当设置的时间一到便自动撤销这个用户的Session,这样就可以防止系统的资源被浪费。Session 对象的TimeOut 属性可以用来设置“过期时间”,已分钟为单位,其设置格式为:

代码如下:

Session.TimeOut=MaxTime

实例代码:(5.asp)页面,本实例说明如何控制会话的结束。

代码如下:

<%@ language="vbscript" %>

<% session.timeout=60 %>

控制会话的结束时间

<%

who = Session.SessionID

CurrentPage=Request.ServerVariables("SCRIPT_NAME")

Response.AppendT olog who & ":" & CurrentPage

Response.write "

你的会话标识为:" & who & "

"

Response.write "你当前访问的页面路径为:" & CurrentPage & "

"

if Session("I")="" then

session("i")=1

else

session("i")=session("i")+1

end if

Session.Abandon

Response.write "本页面被你刷新了" & Session("i") & "次。"

%>

应用中,很多人会遇到Session过期设置有冲突。其中,可以有四处设置Session 的过期时间:

一、全局网站(即服务器)级

IIS-网站-属性--编辑配置-状态管理-会话超时(分钟)-设置为120,即为2小时,即120分钟后如果当前用户没有操作,那么Session就会自动过期。

二、网站级

IIS-网站-具体网站(如DemoSite)-属性-,此时有两个选项,一个是“编辑全局配置”,一个是“编辑配置”。

如果“编辑全局配置”,就和上个配置一样。

如果“编辑配置”,则只对当前网站生效。因为一个服务器可能有很多独立网站。

1、继续选择“状态管理”-会话超时(分钟)-设置为360,即360分钟。效果同上,只不过只对当前网站生效。

2、身份认证-Forms-Cooke超时,选择"12:00:00",即12个小时。可选项共有以下八项:00:15:00

00:30:00

01:00:00

02:00:00

04:00:00

08:00:00

12:00:00

1:00:00:00

即最长24小时,最小15分钟。这是默认的配置。在应用中可以自由定制。

三、应用程序级

同网站管理,只不过作用域仅限当前应用程序。

四、页面级

在某页面中,设置Session.Timeout = 30;即可临时修改某页面的会话过期时间。

查看某个Session的过期时间,可以用

代码如下:

TimeSpan 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?

相关文档
最新文档