asp.net 程序部署到繁忙的网站上(例如租来的空间服务器上)则会频繁地“丢失Session”,这根本不是什么“过期”问题,而是“丢失”问题。不知道Sesson丢失机制,那么纠结Session过期机制也就是没有多大意义了。所以先要搞清楚你自己的说的到底是丢失,还是过期?
另外,所谓“没动作就让他重新登录”这个说法其实细想起来有些荒唐的。有些人以为asp.net 时动不动就去轮询所有会话的Session呢!其实怎么可能?
就算是你设置为1分钟就过期,那么假设1小时之内没有人访问,谁也不会知道Session过期,就算是asp.net也不知道。直到1小时之后此会话再次访问asp.net服务端,才知道Session已经过期了。就算是你设置为过期时间1分钟,也会是如此机制。那么怎么可能让客户端“没动作就自动重新登录”?