ASP.NET mvc auth或会话比设置更快到期
在我的ASP.NET MVC5 网站中,web.config中的登录和会话超时如下:
会话或身份validation仍然在五分钟内完成。 我已经接近我的网络托管服务,以增加IIS的超时,他们在增加IIS的超时后共享了一个屏幕截图 ,但没有任何改变。 知道为什么会这样。
首先,尝试在Global.asax中的Session_Start
方法上设置会话超时:
void Session_Start(object sender, EventArgs e) { Session.Timeout = 60; }
注意:通过使用进程内会话状态,您的会话将清除每个IIS应用程序池回收,这些回收在您的问题应用程序池中在5分钟后回收。
如果上述尝试不起作用并且您可以访问服务器的IIS管理,请执行以下步骤:
- 打开IIS管理器。
- 选择应用程序池=> [您的应用程序池名称] =>回收/高级设置。
- 启用
Regular time interval (minutes)
并将其设置为60,然后应用更改。
如果您无法同时访问IIS管理器和SQL Server配置,则可能需要尝试基于数据库的会话状态管理而不是InProc
模式(请参阅下面的MSDN参考)。
基于数据库的会话状态需要将模式属性更改为SQLServer
,例如:
参考:
MSDN: https : //msdn.microsoft.com/en-us/library/ms178586.aspx
会话在asp.net mvc4应用程序中过期
这是IIS中的SystemIdleTime变量的问题。 我请求我的托管服务提供商将此值增加到30分钟,并且它有效。
它表示当没有30分钟的请求时,当应用程序池关闭时,我的所有会话变量都将被擦除。 该值将覆盖网站web.cofig中设置的会话超时。 您可以将其设置为0以指示应用程序池永远不会关闭,然后您可以通过web.config控制会话的超时。 我也找到了这篇好文章 –
- 用于双向映射的简单约定自动映射(来自/来自ViewModels的实体)
- Mvcsitemapprovider到单个页面的多个路径
- ASP.NET MVC中的模型关系
- 本地化和DataAnnotations。 GlobalResourceProxyGenerator和PublicResxFileCodeGenerator
- 在View中创建HiddenFor IEnumerable
- ASP.NET vNext和EF7中的多个dbContexts
- 如何在MVC中为国家/地区/省创建选择列表
- 如何将MVC 5项目模板添加到VS 2012?
- 如何在ASP.NET中开发的Azure Web App上获取客户端的IP地址?