asp.net中Session过期设置方法
在Asp.net应用中,很多人会遇到Session过期设置有冲突。其中,可以有四处设置Session的过期时间:
一、全局网站(即服务器)级
IIS-网站-属性-Asp.net-编辑配置-状态管理-会话超时(分钟)-设置为120,即为2小时,即120分钟后如果当前用户没有操作,那么Session就会自动过期。
二、网站级
IIS-网站-具体网站(如DemoSite)-属性-Asp.net,此时有两个选项,一个是“编辑全局配置”,一个是“编辑配置”。
如果“编辑全局配置”,就和上个配置一样。
如果“编辑配置”,则只对当前网站生效。因为一个服务器可能有很多独立网站。
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);
其中,二和三的设置,体现在Web.config中即:
- <?xml version="1.0"?>
- <configuration>
- <system.web>
- <authentication mode="Forms" >
- <forms name="AuthLogin" loginUrl="/Login.aspx" protection="All" timeout="360" slidingExpiration="true"/>
- </authentication>
- <sessionState mode="InProc" cookieless="false" timeout="20" />
- </system.web>
- <location path="Login.aspx">
- <system.web>
- <authorization>
- <allow users="*" />
- </authorization>
- </system.web>
- </location>
- </configuration>
以上四处设置的优先级为页面级>应用程序级>网站级>服务器级。换句话说,如果页面设置为20分钟,网站设置为120分钟,那么,显然以20分钟为生效的过期时间。
另外一个值得注意 的地方。
在设置二处,设置会话超时(SessionState)120分钟,而同时用forms认证,设置为“00:15:00”,即15分钟,并且slidingExpirationo为false,则真正生效的Session过期时间是多少呢?
有效的结果是SessionState的设置,即120分钟。
如果有设置Session过期时间没有生效的,请检查以上几处配置。
asp.net中Session过期设置方法的更多相关文章
- 判断asp.net中session过期的方法
判断asp.net中session过期的方法 转载自:http://www.cnblogs.com/xilipu31/archive/2013/04/12/3016830.html 方法一:最麻烦也是 ...
- 几种判断asp.net中session过期方法的比较
方法一:最麻烦也是最容易想到的方法,在每个页面的page_load()方法里面判断: protected void Page_Load(object sender, EventArgs e) { if ...
- 判断asp.net中session过期方法的比较
重写继承page的OnInit()虚方法,在需要的界面上,继承这个类. 1.新建继承page类的类JudgeSession,实现接口成员. 2.重写OnInit()方法,判断session情况. 3. ...
- asp中设置session过期时间方法总结
http://www.jb51.net/article/31217.htm asp中设置session过期时间方法总结 作者: 字体:[增加 减小] 类型:转载 asp中默认session过期时间 ...
- ASP.net中网站访问量统计方法代码(在线人数,本月访问,本日访问,访问流量,累计访问)
一.建立一个数据表IPStat用于存放用户信息 我在IPStat表中存放的用户信息只包括登录用户的IP(IP_Address),IP来源(IP_Src)和登录时间 (IP_DateTime),些表的信 ...
- ASP.NET中Session的sessionState 4种mode模式
1. sessionState的4种mode模式 在ASP.NET中Session的sessionState的4中mode模式:Off.InProc.StateServer及SqlServer. 2. ...
- PHP判断SESSION过期的方法
在公共函数function.php中添加如下方法,即可控制用户登录的SESSION有效期 //封装SESSION过期判断方法function start_session($expire = 0){ $ ...
- asp.net中导出Excel的方法
一.asp.net中导出Excel的方法: 本文转载 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出 ...
- asp.net中导出Execl的方法
一.asp.net中导出Execl的方法: 在 asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址 输出在浏览器上:一种是将文件直接将文件输出流写给 ...
随机推荐
- SQL Server 2008安装和配置过程
下面我将用图解的方式,来介绍SQL Server 2008安装和配置过程,希望对大家有所帮助. 闲言少叙,直奔主题!点击setup.exe安装文件后,如果系统没有以下组件,则会出现如下提示! 安装20 ...
- error: format not a string literal and no format arguments [-Werror=format-security]
You can put this in your Application.mk to disable treating those warnings as errors: APP_CFLAGS += ...
- Quartz 2D画虚线-b
这里使用的函数为 CGContextSetLineDash,有四个参数 CGContextSetLineDash(<#CGContextRef _Nullable c#>, < ...
- 剑指offer--面试题10--相关
题目一:判断一个整数是不是2的n次幂 实现大概如下: int main() { ; )) == ) //重要!! std::cout<<"YES!"<<st ...
- Emmet快速编写CSS样式
基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin. 1.而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如: ...
- win8 ubuntu
点进去看到几点注意: 1. 如果Windows是UEFI方式安装的,那Ubuntu必须也用UEFI方式安装 2. 必须用64位的Ubuntu安装文件,32位的不能探测EFI 3. 必须用UEFI的方式 ...
- java 页面换行处理
在taxtarea中输入的文本.如果含有回车或空格.在界面上显示的时候则不哪么正常.回车消失了,空格变短了. 如何解决这个问题呢.有2种方法. 1.使用<pre>标签 w3c对pre元素是 ...
- 中国移动MM Android/OPhone付费SDK--MMBillingSDK,集成问题总结
原地址:http://www.j2megame.com/html/xwzx/ty/2916.html 中国移动MM Android/OPhone付费SDK--MMBillingSDK,集成问题总结 近 ...
- java给图片加水印代码
try { String targetImg = "D:/Blue hills.jpg"; // String pressImg = "D:/20130311220300 ...
- hdu 4696 Answers
思路:由于c[i]要么是1,要么是2.所以当c[i]中没有1的时候就不可能得到奇数: 再就是如果m<=0,也不可能得到. 代码如下: #include<cstdio> #includ ...