我在IIS 6.0中使用ASP classic(1.1)。是否有任何选项可以设置会话永不过期?
提前谢谢, 乔治答案 0 :(得分:3)
Session.Timeout=5
意味着它会在5分钟内超时。我不认为您可以将其设置为无穷大,但您可以将其设置为大约数字。
答案 1 :(得分:2)
您可以以分钟为单位指定Session.Timeout值。 或者让你的页面每隔n分钟轮询服务器一次(javascript函数会这样做,或者你可以有一个虚拟iframe,刷新内容设置为每隔n分钟调用一个虚拟asp页面)。
这样更好(尽管轮询可能会对您的服务器产生负担,但不要经常轮询)因为如果将会话超时设置为非常高(或无限......)的值,您最终会崩溃内存不足错误(我想应用程序池将重新启动)。
当用户在超时到期之前调用应用程序上的任何asp页面时,会话保持活动状态。如果您的用户关闭其浏览器,则无法通知您的应用程序,并且asp必须等待超时来清理内存。这意味着会话将在用户离开后保留在内存中n分钟,n为超时。
没有必要进行无限会话(可以通过轮询来解决),并且使用timeout参数进行调整会使您的应用程序更加脆弱。
如果你想长时间存储信息(基本上,你的应用程序的整个生命周期)你最好使用Application对象,这是一个像Session一样的字典但是是一个单例,任何人都可以访问它在服务器上。