如何防止会话超时

我知道这对你们大多数人来说可能是一个简单的问题。 但我的问题是我的服务器主机每分钟都清空会话池。 那么如何让我的用户保持登录超过一分钟?

我听说我可以使用SessionStates,但是我没有在网上找到任何像我这样的新手很容易使用的指南。

我也听说过用cookies做这件事。 怎么样?

我正在使用C#和.Net

这是一种方式:

http://weblogs.asp.net/stevewellens/archive/2009/06/09/ah-ah-ah-ah-staying-alive-staying-alive.aspx

有时您希望您的网页“保持活力”。 也就是说,如果用户填写了复杂的表单,则不希望会话在完成之前超时。 用户可能非常生气并且理所当然:你甚至可能会被大吼大叫!

这不仅仅是将会话超时增加到非常大的值。 如果这样做,在访问者离开网站后,会话将在服务器内存中保持活动数小时。 增加会话超时是一种解决方案……但不一定是一个好的解决方案。

目标是只要在客户端计算机上打开网页,会话就应该保持活动状态…即使没有回发来重置会话计时器。 当网页关闭时,会话应该正常超时。

我为此实现了一个解决方案:客户端将以小于会话超时的间隔“ping”服务器,这会重置会话计时器。 这被称为Heartbeat设计模式(我找不到一个像样的网站/页面链接)…

我们使用SQL Server来保存会话状态。 http://idunno.org/articles/277.aspx

这具有在服务器场中工作的额外优势。

这些文章也对您有所帮助:

http://msdn.microsoft.com/en-us/library/ms178586.aspx

http://support.microsoft.com/kb/317604

对于非常容易理解的video,请尝试以下搜索: http : //www.bing.com/videos/search?q = asp.net+session +state+&go =& qs = n&sk =&sc = 2-19&form = QBVR #