原文地址:http://blog.csdn.net/zhangquanok/article/details/10651243
在服务器端有一个session池,用来存储每个用户提交的session中的数据。
Session有跨页面不跨进程的访问特性,因此对于每个客户端(同一电脑的同一个浏览器)中的session,不能被其它电脑或本机的其它浏览器所访问。
客户端首次与Web服务器建立连接时,服务器为客户端分配一个SessionID作为这个Session的唯一标识,这个SessionID以Cookie的形式保存在客户端,用户每次提交页面时,浏览器都会把这个SessionID包含在HTTP头中提交给服务器,通过这个SessionID从服务器的Session池中得到这个SessionID中的数据。
Session以滚动计时方式存储数据,且通常默认有效期为20分钟,即当访问了一次Session之后有20分钟没有提交操作,那么这个Session就会被服务器自动销毁,在这期间如果有提交操作,则从最近的一次时间开始,重新计时。当要更改有效期时,在Web.Config()中的
<system.web>
<sessionState timeout="20"></sessionState> <!---设置session的过期时间,时间以分钟为单位-->
</system.web〉