2014-03-12 89 views
19

我的MVC 5網站有web.config中像這樣:MVC 5會話超時

<authentication mode="Forms"> 
    <forms name=".ADAuthCookie" loginUrl="~/Account/Login" 
     timeout="2880" slidingExpiration="true" protection="All" /> 
</authentication> 

但超時不起作用。無論我在這裏給予什麼價值都沒有關係,它總是在20-30分鐘後過期。我如何維護用戶登錄時間更長或直到他們登出?

有沒有什麼辦法可以使用「In-Proc」來實現?或者我在這裏失去了一些東西?

回答

27

您正在處理兩個單獨的問題,auth超時和會話超時。會話超時由web.config中的以下關鍵控制...

<system.web> 
    <sessionState mode="InProc" timeout="30" /> 
    </system.web> 

我不知道你遇到,但我懷疑這是你所遇到,而不是認證超時會話超時...嘗試從您的表單標籤中完全刪除超時,看看是否給你你在找什麼。

更多信息這裏 - forms timeout issue in asp.net mvc

+2

這個我試過,但驗證的登錄等待,甚至超越了'timeout'時間後仍然有效。 –

+0

@OldGeezer我猜會話超時應該> =您的表單身份驗證超時。 – Rachmaninoff