许多session丧失的缘由是由于毛病的顺序或许是毛病的假造目次构造。
SessionID 的转变有下面几个缘由。
缘由一:
Netscape的阅读器会以为"/App/user.asp"跟"/app/user.asp"是两个差别的顺序。它会自动地最先一个新的会话期(new session)。所以,才你的网站上一定要一致字母的大小写。
缘由二:
别的一个是缘由是 Session.Timeout 的值。
Timeout这个属性是用来设置Session的超时时刻的,一分钟为单元。假如一个用户,在一个Timeout的时刻内没有革新或许要求页面,那末会话就会完毕(the se ssion ends)。当你再次要求页面的时刻,一个新的会话有会最先。
确信Timeout的值,是分钟的。
花样: Session.Timeout [ = nMinutes]
缘由三:
假如用户把他们的阅读器的cookie关了,固然session就不能坚持。由于session的坚持是要靠cookie的。
要坚持Session的状况,阅读器就必须支撑cookie,而且在翻开的状况。你固然可以用其他的要领
缘由四:
常犯的毛病就是,竖立了毛病的目次构造。像下面的目次构造:
root 放了global.asa
\virtual_root 没有global.asa
\another_virtual_root 没有global.asa
挪用两个virtual roots的页面,就会实行雷同的global.asa(root上的谁人)
别的的一个目次构造:
root 没有global.asa
\virtual 放了global.asa
\another_virtual_root 别的一个global.asa
每个差别目次下的global.asa都邑各自实行,固然实行的代码就差别了。不过假如内里的代码一样,就令当别说。:)
所以你在要求差别目次下页面,将会致使差别的global.asa被实行。差别的变量被挪用,差别的session id被竖立....之前的有效的信息都被损坏了。
下面是细致的诠释:
当你先阅读子假造顺序上的页面(child virtual application),然后再去阅读子假造顺序的上一级的父假造顺序(parent virtual root)的页面。那些变量就会丧失、损坏。看下面的表格:
要求 子顺序1丧失 子顺序2丧失
先要求 Root 不会 不会
只在子顺序1之前要求 Root 不会 会
只在子顺序2之前要求 Root 会 不会
末了要求 Root 会 会
【相干引荐】
1. ASP免费视频教程
2.引见ASP中Session对象的三种要领
3. 详解ASP中Session的运用技能
4. ASP session简朴示例
5. 关于ASP中session的细致引见
以上就是教你处理ASP session丧失的要领的细致内容,更多请关注ki4网别的相干文章!