引起丢失登陆状态信息原因
后台频繁需要重新登陆,引起这样的情况可能有几种:
1、杀毒软件引起,目前发现MCF的杀毒软件,会扫描类似web.config,BIN目录下的DLL文件,这样会导致IIS回收W3WP.EXE进程,而造成session丢失。建议删除或者更换杀毒软件。
2、使用 ASP.NET InProc 会话状态模式时会丢失会话数据
请参考 MS 的官方说明
http://support.microsoft.com/kb/324772/zh-cn
具体修改:
用记事本打开根目录下的web.config文件,注意:不要选择自动换行
修改
<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120" />为:
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="120" />3、如果是2003的服务器,建议不要多个站点共用一个应用池,因为IIS6有垃圾自动回收机制和保护机制。当一个应用池的资源耗费达到一定程度,也会导致w3wp.exe进程被回收。
4、另外。修改web.config及操作bin下的dll文件(比如:覆盖、新增、删除)也会导致w3wp.exe进程被回收。
5、很多虚拟机都限制了内存和CPU资源占用。这样的空间会导致频繁回收系统资源。建议更换空间或租用服务器。
