我有一个 ASP.NET MVC5 应用程序,其中包含为使用 OWIN 生成的启动配置。
用户登录到我的应用程序,保持浏览器打开,但如果他在第二天尝试访问它,应用程序会将用户重定向到登录页面。
我无法在我的开发人员机器上重现此问题,它只发生在我当前的共享主机提供商上。实际上它在我以前的提供商上正常工作。
应用程序池偶尔会重新启动,但根据我的经验,如果我手动进行回收,它不会导致令牌失效(据我所知,这应该是预期的行为)。
我尝试显式设置滑动过期并增加 cookie 有效性,但没有效果:
// Enable the application to use a cookie to store information for the signed in user
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
ExpireTimeSpan = TimeSpan.FromDays(365*20),
SlidingExpiration = true,
LoginPath = new PathString("/Account/Login")
});
// Use a cookie to temporarily store information about a user logging in with a third party login provider
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
我正在使用 .NET Framework 4.5。我尝试将所有 NuGet 包更新到最新版本,但并没有解决问题。
我检查了发送的 cookie 的到期时间,它们是正确的,这应该不是问题。它发生在各种浏览器中。