单个程序池启动的进程大于一个就不能保持会话,用一个可以打开应用程序池设置:
在回收栏的 “回收工作进程” 和 性能栏的 “在空闲此段时间后关闭工作进程” 取消添加回 收栏“在下列时间回收”,然后添加上时间(根据你站访问量设置)。访问量不大,可以设置晚上回收一次。
下面向大家详细介绍如何解决在windows2003、IIS6中,asp或者asp.net程序session、application丢失的问题。
1 运行环境:windows2003 + IIS6 + ASP(ASP.NET)
2 问题症状:页面的sessionid会改变,刷新一次改变一次;不能从父页面获得正确的session;iframe中得不到application。
3 解决办法:
a. IIS6中相比IIS5增加了一个应用程序池,默认是使用DefaultAppPool,如图一所示。
图一
b. 先为站点建立一个应用程序池,打开IIS管理器,右键点击应用程序池-新建-应用程序池,如图二。
图二
c. 输入你的应用程序池的ID,这里我输入的是localhost,应用程序设置选择第一项,点击确定,可以在应用程序池下看到新建的应用程序池。如图三、图四所示。
图三
图四
d. 对你的每个站点进行设置,进入站点的属性对话框,点击主目录选项卡,将应用程序池选择为刚才新建的,确定,如图五。其他站点操作类似。
图五
好了,问题解决完毕。