我正在運行ASP.NET 4.0應用程序並使用plesk控制面板發佈它。我做了以下操作。在web.config文件刷新時在asp.net mvc中的會話超時
1.I設置會話超時爲:
<sessionState timeout="20000"/>
- 我處理會話變量在登錄控制器是這樣的:
Session["userId"] = lUser.userId; Session["role"] = lUser.userType;
進入其他控制器,代碼如下:
if (Session["role"] == null)
{
return RedirectToAction("Index", "Login");
}
else if (Session["role"].ToString() == "Admin" || Session["role"].ToString() == "Super Admin")
{
return View();
}
這段代碼在我的本地服務器上沒問題,但是當使用plesk控制面板發佈到真實服務器時,它也可以第一次使用。但是當我第二次點擊相同的菜單時,它會重定向到登錄頁面。
你可以是InProc模式,即'嘗試<的sessionState模式=「InProc方式」超時=「20000」無Cookie =「假」 />' –
我會用個破發點,並逐步完成,看看你的會話變量是什麼和重定向發生的地方。 – DaniDev
@DaniDev你不能使用斷點和調試,因爲真正的服務器上發生問題 – Alamgir