如何防止session失效?

yinuo78 2008-07-09 11:53:20
如题
...全文
1738 35 打赏 收藏 转发到动态 举报
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyingjie5360 2011-05-31
  • 打赏
  • 举报
回复
我也遇到了这问题。。。不怎么解决了!
fanglei10 2011-05-27
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 xhan2000 的回复:]
做一个隐藏的帧refresh.aspx,不停的刷新

或者用xmlhttp不断访问一个aspx页面即可
[/Quote]
在各种方法可行不过每个页面都要加
lov52e0 2009-02-24
  • 打赏
  • 举报
回复
2种方法检测一下,我之前也是这个毛病,,

首先在IIS 的网站属性里面,点配置,然后选项里面有一个SESSION TIMEOUT, 你设置好,

然后<sessionState mode="StateServer" stateNetworkTimeout="525600" cookieless="false" timeout="525600">
</sessionState>

这个是最大的,,,

最后一个也很重要

<authentication mode="Forms">
<forms loginUrl="Default.aspx" timeout="525600" protection="All" path="/" defaultUrl="masterpages/Default.aspx">
</forms>
</authentication>

这个FORMS 里面的 TIMEOUT也一定要跟SESSION TIMEOUT里面一样的,否则没用
pdsnet 2008-07-14
  • 打赏
  • 举报
回复
呵呵 ,我刚好也遇到这个问题.
mengxj85 2008-07-10
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 yinuo78 的回复:]
引用 4 楼 evjen 的回复:
造成Session数据丢失的原因有
1.应用程序域重启
2.修改了Web.config或Global.asax文件,或修改了文件的修改日期
3.修改了bin\或App_Code目录的文件
4.在Web.config或machine.config文件中设置了processModel元素,它表示应用程序应何时重启动,引起重启动的条件有内存限制或队列的限制
5.防病毒软件修改了上述文件之一。

楼主可以试着查看哈


都不是..
我是长时间没去操作它,等…
[/Quote]
那就是你设置的时间不够长了,把时间设长些,配置文件默认是20分钟,改长些,另外IIS里默认也很短,在IIS里也设置一下,有两个地方,具体记得不不太清楚了,好像是缓冲池和会话时间吧
mydreamf 2008-07-10
  • 打赏
  • 举报
回复
呵呵。存到服务里吧。不会丢。又方便
wzwen 2008-07-10
  • 打赏
  • 举报
回复
多少年的老问题了
minhua1983 2008-07-10
  • 打赏
  • 举报
回复
按键精灵~让你享受全年在线的状态- -
huangdanming 2008-07-10
  • 打赏
  • 举报
回复
标记下
yinuo78 2008-07-10
  • 打赏
  • 举报
回复
设置时间,并不是一个好方法呀..
billclinton8 2008-07-09
  • 打赏
  • 举报
回复
你在 Global.ascx 的 Session_End 的方法上加上一写处理代码看行不行
yinuo78 2008-07-09
  • 打赏
  • 举报
回复
除了设置超长时间呢?
还有别的不?
请高手们帮帮小妹呀......
xtra6714 2008-07-09
  • 打赏
  • 举报
回复
不使用,或设置超长时间
zww19830120 2008-07-09
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 devilsu 的回复:]
我前一段时间遇到过Session也是在未到期的情况下内容就丢失了。最后通过使用StateServer方式存储session就好使了。在web.config中配置代码 <sessionstate mode="stateServer">配置完后在控制面板的管理工具中打开服务在服务中启动asp.net state service(asp.net状态服务)就OK了。引起session丢失有很多种原因你可以在往上查查
[/Quote]

就是这个了 比设置时间什么都管用多了
sheng9hhd 2008-07-09
  • 打赏
  • 举报
回复
最傻的办法,那就是刷,让服务器知道你还活着
满衣兄 2008-07-09
  • 打赏
  • 举报
回复
小妹?
用的时候用Session,如果Session丢失了就去读cookies,并且写到Session里.也就是把数据倍份一份到cookies里
这种方法还是比较不错的
suyiming 2008-07-09
  • 打赏
  • 举报
回复
楼主的 服务器 很牛哦
aspnet30 2008-07-09
  • 打赏
  • 举报
回复
Session很容易丢失,建议用cookies
beyond8848 2008-07-09
  • 打赏
  • 举报
回复
override sessionprovider.
sxmonsy 2008-07-09
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 devilsu 的回复:]
我前一段时间遇到过Session也是在未到期的情况下内容就丢失了。最后通过使用StateServer方式存储session就好使了。在web.config中配置代码 <sessionstate mode="stateServer">配置完后在控制面板的管理工具中打开服务在服务中启动asp.net state service(asp.net状态服务)就OK了。引起session丢失有很多种原因你可以在往上查查
[/Quote]
加载更多回复(15)

62,133

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧