社区
C#
帖子详情
Session 丢失问题!
fgh0302
2010-06-10 10:05:46
公司系统 经常出现 session 丢失问题,以前都是用cookie 因为是2个项目在一个目录下,可能cookie命名有问题
老冲突 必须 删除cookie才行,后来把其中一个项目全 改成session了 结果会出现丢失现象。而且我发现好像都是
打开新窗口的时候丢失 直接跳转没事~~
...全文
151
28
打赏
收藏
Session 丢失问题!
公司系统 经常出现 session 丢失问题,以前都是用cookie 因为是2个项目在一个目录下,可能cookie命名有问题 老冲突 必须 删除cookie才行,后来把其中一个项目全 改成session了 结果会出现丢失现象。而且我发现好像都是 打开新窗口的时候丢失 直接跳转没事~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
28 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
porschev
2010-07-11
打赏
举报
回复
1。把session的过期时间设置大点。。
2.再重新检查数据访问层的代码。。。。sqlconnection,sqldatareader都要关闭和注销,sqlcommand也要注销。。。。。。
3.跳转尽量少用response.Redirect();
4.定时回收服务器资源。。
5.实在不行。。sqlserver方式保存session
以上都是经验。。。不知道对你有不有帮助
GT7466
2010-06-10
打赏
举报
回复
“cookie命名冲突”,那就避免冲突!
nevergu
2010-06-10
打赏
举报
回复
[Quote=引用 2 楼 q107770540 的回复:]
设置session inproc -->stateserver .开启asp.net state服务
不要将session存储在IIS进程内
[/Quote]
/strong
qq234121906
2010-06-10
打赏
举报
回复
是不是把cookie给清空了额。
session对话标记也是在cookie中保存的。
yymycabbage
2010-06-10
打赏
举报
回复
session丢失情况比较多,用statesever试试看
paradise1986
2010-06-10
打赏
举报
回复
帮顶!我还没遇到过!!
缪军
2010-06-10
打赏
举报
回复
呵呵,namespace不会用啊:
[开发组织.][项目名称.][NameKey]
或者
[开发组织_][项目名称_][NameKey]
还有嘛:
cookie的声明是全局常量,实现定义好,程序员只能操作,不能自己随便定义
fgh0302
2010-06-10
打赏
举报
回复
哈 到没有多少个,也没有滥用。 因为都是之前程序员弄的,改疯了我要
以专业开发人员为伍
2010-06-10
打赏
举报
回复
[Quote=引用楼主 fgh0302 的回复:]
公司系统 经常出现 session 丢失问题,以前都是用cookie 因为是2个项目在一个目录下,可能cookie命名有问题
[/Quote]在我很复杂的全国连锁企业管理系统中,cookie使用也没有超过10个的时候。我想你们是不是又滥用了cookie了?(没有办法,让程序员当项目经理就会这样,他自己尚且不能架构软件又怎能控制好其它程序员去随意“设计”?)
实际上不论cookie还是cache的key,都需要有个命名规范(1分钟制定出的规范),例如在命名中包括工程项目设置class名作为前缀。
fgh0302
2010-06-10
打赏
举报
回复
asp.net state服务 每次重启服务器的话 都要重新开启吗?
jietuan
2010-06-10
打赏
举报
回复
[Quote=引用 5 楼 mlzxbbs 的回复:]
webconfig文件里<system.web>节下加上
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="20"/>
并且在服务里把asp.net state服务开启
[/Quote]
或者你把session存储在专门的session数据库服务器里面。
fgh0302
2010-06-10
打赏
举报
回复
[Quote=引用 5 楼 mlzxbbs 的回复:]
webconfig文件里<system.web>节下加上
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="20"/>
并且在服务里把asp.net state服务开启
[/Quote]
这个我知道 一会试试 看 。呵呵
孟子E章
2010-06-10
打赏
举报
回复
Session丢失跟服务器设置和浏览器设置都有关系,采用Cookie是比较好的方法。Cookie冲突,你可以采用的 Cookie名称,改成Session的工作量更大
porschev
2010-06-10
打赏
举报
回复
及时清空释放资源。。。
session失效时间设置大点
再就是跳转页面操作尽量少用。response.redirect();
army369168520
2010-06-10
打赏
举报
回复
session服务器端
cookie客户端
一个是密文
一个是明问
lirenniao
2010-06-10
打赏
举报
回复
cookie session 混合用。。。。
INGDI
2010-06-10
打赏
举报
回复
不会
等答案
wangjgdd
2010-06-10
打赏
举报
回复
webconfig文件里<system.web>节下加上
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" cookieless="false" timeout="20"/>
并且在服务里把asp.net state服务开启
ck11926375
2010-06-10
打赏
举报
回复
http://tonyqus.cnblogs.com/archive/2006/04/19/378904.html
dlsgliss
2010-06-10
打赏
举报
回复
一:有些杀病毒软件会去扫描您的Web.Config文件,那时Session肯定掉,这是微软的说法。
二:程序内部里有让Session掉失的代码,及服务器内存不足产生的。
三:程序有框架页面和跨域情况。
第一种解决办法是:使杀病毒软件屏蔽扫描Web.Config文件(程序运行时自己也不要去编辑它)
第二种是检查代码有无Session.Abandon()之类的。
第三种是在Window服务中将ASP.NET State Service 启动。
今天遇到asp.net session丢失了,然后又回来了,session里存储的是用户信息,最后导致每次刷新是不同的用户或是未登录状态。很让人吐血的问题。
搞了2天没搞出来,最后重写了验证机制,都放在了cookie里了,session不敢用了。
今天发现,问题是由于设置iis6的 应用程序池内的性能内的最大web进程数导致的,由于session默认是存放在web进程里的,进程开多了,导致session不能共享,每次刷新又由不同的进程来处理,所以就导致刷新出来不同的用户,前提是在本机登录过这些用户。
解决方法可以用stateserver或者用sqlserver模式来存储session。
由于google没搜到类似问题,所以这里拿出来说一下这个让我头痛了2天,最后修改了n多页面的问题。
加载更多回复(7)
IFrame中
Session
丢失
的解决办法
IFrame中
Session
丢失
的解决办法
session
丢失
解决方案
重定向的时候是有
session
丢失
的
问题
;window.open
丢失
session
问题
;使用框架(Frameset)调用不同域名下的页面,会出现此域下页面的Cookies和
Session
丢失
的现象。
微服务架构下的分布式
Session
管理
Session
一直以来都是Web应用中不可或缺的一个组成部分,在Web应用架构的变迁与演进过程中,
Session
管理也在随之改变,不同架构下有着不同的
Session
管理实现。 而时下热门的微服务架构又会为
Session
管理带来哪些改变与影响,我们在做微服务架构下的
Session
管理时又该考虑哪些
问题
。在此我们将会从改变与影响出发,一起探讨如何做好微服务架构下的
Session
管理。
Session
丢失
asp.net
Session
丢失
的
问题
处理解决方案
asp.net 修改/删除站内目录操作后
Session
丢失
问题
后来经过试验发现,如果删除改变的目录不属于当前项目所在虚拟目录,则
Session
可用,相反则不可用;调试跟踪中提示的:
Session
.get_item()……返回null; 后经过研究发现,在虚拟目录删除改变目录会造成
Session
丢失
,以至于失效。而
session
丢失
的实质就是:应用程序重起! 这里有多种解决方案: 1)利用外部进程保存
session
2)利用数据库保存
session
3)用户ID放入cookie,若检测到
session
为空但cookie存在在重新初始化
session
. 4)将要对其进行操作的目录移出asp.net程序外 我这里使用了第一种,操作如下: 1. 首先启动”
C#
110,549
社区成员
642,562
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章