为什么我的会话超时发生?

时间:2016-06-07 10:37:16

标签: asp.net asp.net-mvc session session-timeout

我已在我的web.config文件中将会话超时设置为2880秒(48分钟),该文件为:

<system.web>
    <authentication mode="Forms">
        <forms loginUrl="~/Account/Login" timeout="2880" />
    </authentication>
    <sessionState mode="InProc" timeout="2880" cookieless="false" customProvider="DefaultSessionProvider" >
        <providers>
            <add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxx" connectionStringName="DefaultConnection" />
        </providers>
    </sessionState>
</system.web>

当我在本地运行此程序时,它正在运行,但是当我在部署后在线测试时,我的会话在20分钟后超时。

2 个答案:

答案 0 :(得分:0)

sessionState中,超时以分钟为单位....尝试将行更改为:

<sessionState mode="InProc" timeout="48" cookieless="false" customProvider="DefaultSessionProvider" >

看看......

答案 1 :(得分:0)

sessionState中的timeout属性允许您以分钟为单位设置时间,默认超时为20分钟。

你可以使用。

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

有关更多信息,请参阅此链接。 https://msdn.microsoft.com/en-in/library/h6bb9cz9(v=vs.85).aspxHow to set session timeout in web.config