ASP程序中Session的问题

[复制链接]
查看11 | 回复4 | 2009-4-2 23:52:08 | 显示全部楼层 |阅读模式
我想知道大多数网站的Session问题都是怎么解决的?我在服务器把回话超时改的很小,以达到节省资源的目的。这样一来就出现了个问题,Session很快就失效了,然后用户不得不重新登陆。我希望大家能给我个解决办法(服务器的设置不变),我自己想到一种是利用cookies让用户重新登陆,不过感觉不太理想.所以求助大家能提供一个好的、可行的解决办法
这个东西最好是不用cookies 因为里面有些安全性的信息,所以不是万不得以是不会用的 我上面说的只是在cookies中保存用户名和密码让他重新登陆
还有就是 请大家看清我写的再回答好么

回复

使用道具 举报

千问 | 2009-4-2 23:52:08 | 显示全部楼层
在2003系统中,不管你SESSION时间设置成多长时间,SESSION有时都会很快失效,因为2003里有个回收的功能,一回收,就没了。 关于这问题我以前写过一种SESSION和COOKIES结合的办法,安全上也没有问题,主要原理是: SESSION:保存用户登录信息,如:用户ID,用户名等等, COOKIES:保存用户ID和登录时的特证码,特证码生成的方法是 用户名+密码+登录时间 通过MD5加密生成一个字段串,此字符串同时保存到此用户ID对应的字段里。 当SESSION失效时,获得COOKIES的两个值,如果特证码和数据库里一样,说明是正常登录,程序再次给SESSION赋值,否则退出重新登录。这里COOKES的ID和特证...
回复

使用道具 举报

千问 | 2009-4-2 23:52:08 | 显示全部楼层
修改IIS的配置,把Session timeout的时间改成:200(默认为20)...
回复

使用道具 举报

千问 | 2009-4-2 23:52:08 | 显示全部楼层
可以考虑用户登陆后的信息放在cookies里cookies("username")=usernameresponse.cookies.expires=time 设置cookies过期时间...
回复

使用道具 举报

千问 | 2009-4-2 23:52:08 | 显示全部楼层
用个页面刷新 使用Response.IsClientConnected属性来获得浏览器是否连接 不连就把他搞掉http://www.hackhome.com/InfoView/Article_105560.html...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行