关于session超时、网址里有未知字符的问题

 

   session本来是个不稳定的东西,经常会被丢失,本来用cookie不错,但又不想对程序做改动。查了查资料,找到了下面一段:

      由于Asp.net程序是默认配置,所以Web.Config文件中关于Session的设定 默认的是下面这个:运行后后面会自动加一串字符 ,不好看,

如下:

在<system.web></system.web>节点中修改或添加配置,有的已经存在,有的还没有存在。


<sessionState mode ="InProc" cookieless ="true" timeout ="20"></sessionState>


 

改一下cookieless 就行了。

<sessionState mode ="InProc" cookieless ="false" timeout ="20"></sessionState>



想让session不容易丢失,设置的session配置如下(电脑上开启asp.net state 服务):

<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data   source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"/>


我们会发现sessionState标签中有个属性mode,它可以有3种取值:InProc、StateServer、SQLServer(大小写敏感)。默认情况下是InProc,也就是将Session保存在进程内(IIS5是aspnet_wp.exe,而IIS6是W3wp.exe),这个进程不稳定,在某些事件发生时,进程会重起,所以造成了存储在该进程内的Session丢失。

posted @ 2012-06-23 13:57  真爱无限  阅读(194)  评论(0编辑  收藏  举报