Asp.net

ASP.NET 中的會話超時限制?

  • May 23, 2020

我正在為用 C# 編寫的 ASP.NET 應用程序在 Web.Config 中修改會話超時,目前我將超時設置為 120 分鐘,如下所示:

<sessionState mode="InProc" cookieName="Application_SessionId" timeout="120"/>

這個值有限制嗎?因此,例如,如果我希望將其設置為 24 小時(1440 分鐘),這是否適用?

它是帶有 MVC 2.0 的 ASP.NET 4.0 版

預設值為20,最大值為525600525600分鐘相當於一年)。在您的Web.config文件中維護以下程式碼以維護最大會話超時:

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

以上一個對我有用。請參考這裡

Timeout 屬性不能設置為大於 525,600 分鐘(1 年)的值。預設值為 20 分鐘。

缺點:如果你有大量使用者,你會遇到性能問題,隨著會話超時的增加,你的非活動會話將保留在 Web 伺服器記憶體中,這可能會導致應用程序池回收,從而導致所有使用者的所有會話失去。

引用自:https://stackoverflow.com/questions/17719982