我的Asp.net会话即使我在web.config文件中进行了设置,也会立即过期,
<system.web>
<sessionState timeout="2880" mode="InProc" cookieless="UseCookies"></sessionState>
<customErrors mode="RemoteOnly"/>
<trace enabled="false" localOnly="false"/>
<compilation debug="false" strict="false" explicit="true" targetFramework="4.0"/>
<httpCookies httpOnlyCookies="true"/>
<pages validateRequest="false" enableEventValidation="false" viewStateEncryptionMode ="Never" enableViewStateMac="false" />
</system.web>
我在web.config中进行了上述设置,即使它在约3分钟后过期...... 任何人都可以帮助我吗?
答案 0 :(得分:0)
如果您的应用程序启用了AJAX,请删除cookieless属性。使用cookieless
属性的默认值。
来自MSDN doc:
cookieless属性可以是以下可能值之一。 默认值为UseCookies值。
注意:配置时 启用AJAX的ASP.NET网站,仅使用默认值 UseCookies用于cookieless属性。使用Cookie的设置 ASP.NET AJAX客户端脚本不支持在URL中编码 库。
答案 1 :(得分:0)
我认为会话不会立即过期,而只是死亡。由于您使用InProc
会话状态,因此可能会死亡
最佳解决方案 - 使用SqlServer Mode会话状态。