A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 帅气的冬瓜 中级黑马   /  2013-11-26 12:50  /  1472 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

比如说,登陆系统之后,session记住用户名,但是很快就会丢失,改怎么解决?

6 个回复

倒序浏览
一:有些杀病毒软件会去扫描您的Web.Config文件,那时Session肯定掉,这是微软的说法。
二:程序内部里有让Session掉失的代码,及服务器内存不足产生的。
三:程序有框架页面和跨域情况。

第一种解决办法是:使杀病毒软件屏蔽扫描Web.Config文件(程序运行时自己也不要去编辑它)
第二种是检查代码有无Session.Abandon()之类的。
第三种是在Window服务中将ASP.NET State Service 启动。


不知道对不对,你看看吧。
回复 使用道具 举报
第一种方法不可行,第三种方法试过,效果不好!第二种方法还没有试过。谢谢你的参与!
回复 使用道具 举报
不知道楼主用的是jsp还是asp.net,楼上说的原因好像是asp.net的原因和解决方法吧,
下面是jsp的解决方法:
1.session会丢失好像跟URL回写有关!如果你将cookies关闭了的话,必须使用URL回写才能保持session
2.中间件在重新编译的时候就可能会将session丢掉, 最笨的解决的办法就是重新修改页面后,自己将所有的页面访问一遍, 然后再重新登录就应该不会再丢session!
3.在server.xml加上这句,也许也适合你这个情况
<Manager
className="org.apache.catalina.session.PersistentManager"
debug="0"
saveOnRestart="false">
<Store className="org.apache.catalina.session.FileStore"/>
</Manager>

希望帮到你

评分

参与人数 1技术分 +1 收起 理由
FFF + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马