ASP.. NET web应用程序会话问题
本文关键字:会话 问题 应用程序 web NET ASP | 更新日期: 2023-09-27 18:16:50
我开发了一个ASP。. NET web应用程序,安装在"实时"IIS 7.5上。web应用程序使用http会话在登录用户的页面之间传递参数。这在我的开发机器上非常有效(在VS2010 IDE中使用本地IIS进行测试),但是当这个web应用程序上传到客户端的IIS并且他们开始使用它(Google Chrome和IE浏览器)时,在一些随机时刻会话变量似乎消失了。我的第一个猜测是通过web增加会话超时设置。
<configuration>
<system.web>
<sessionState timeout="20"></sessionState>
</system.web>
</configuration>
但这似乎并不能解决问题。所以这让我想知道,还有什么其他关于会话的设置?就像一个内部文件夹,保存在实际的IIS上溢出的所有会话的缓存?什么好主意吗?
EDIT:根据@wy__的建议,我修改了网页。配置文件并开始在我的开发机器上看到同样的问题。这是整个系统。网页部分,就像我现在的样子:
<system.web>
<compilation targetFramework="4.0" debug="false"/>
<pages validateRequest="false"/>
<httpRuntime requestValidationMode="2.0" executionTimeout="110" maxRequestLength="262144"/>
<sessionState timeout="20" cookieless="true" regenerateExpiredSessionId="true"></sessionState>
</system.web>
我也检查了,只有一个w3wp.exe
进程在运行。
默认情况下,会话使用cookie来跟踪用户会话。如果您不确定用户是否关闭了cookie,您可以配置无cookie会话。
。
<configuration>
<system.web>
<sessionState cookieless="true" regenerateExpiredSessionId="true" />
</system.web>
</configuration>