mvc应用程序中的会话超时

时间:2014-11-06 08:34:44

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

我应该如何在我的MVC4应用程序框架4.0中使用web.config中的标记?

我在网络配置中添加了这样的内容:

<sessionState timeout="15"  />

但它没有超时。

如果我设置mode =“StateServer”或mode =“InProc”,我无法理解它意味着什么 在msdn中它说的是“InProc” - “会话状态正在与ASP.NET工作进程一起进行。” 但我不知道如何理解它以及选择哪一个。

谢谢。

2 个答案:

答案 0 :(得分:1)

在web.config中配置它:

<authentication mode="Forms">
    <forms defaultUrl="~/Default.aspx"
        loginUrl="~/Login.aspx"
        slidingExpiration="true"
        timeout="60" />
</authentication>

通过上述配置,用户将在会话到期时始终重定向到Login.aspx页面。超时为60分钟,滑动到期意味着每次用户向Web应用程序发出请求时都会延长超时,因此如果他保持活动状态,则会话将不会过期。像这样的配置比你试图做的更具优势 - 一旦用户登录,他将自动重定向回他最初请求的资源。并且您始终可以覆盖和自定义此行为。

答案 1 :(得分:0)

请查看this session timeout post,了解超时的工作原理以及可能没有的原因。

关于不同模式的含义,您可以访问Session-State Modes