我剛剛意識到,當從www.website.com重定向到沒有www的website.com時會話丟失。MVC 4丟失會話,因爲重定向從www.website.com到網站
但是我很幸運,我可以設置服務器,所有重定向都以www開頭。在將來,我不希望我的應用程序依賴於服務器,我想讓它依賴於代碼。
例如:
@Html.Hidden("PageManagerUrl", Url.Action("PageManager","Admin"))
產生/Admin/PageManager/
,我用location.href =網址(URL時爲/Admin/PageManager/
這是不是100%肯定,我會在第一時間失去我的會議重定向的,但是當我測試,但重定向前進和後退,關於第三或第四的時間,會話將丟失我設置服務器設置後:
Preferred domain * www.website.com
Select the URL (either with or without the www. prefix) to which site visitors will be redirected via a SEO-safe HTTP 301 redirect.`
會議是NE Ver再次失敗。所以我想知道,如何做到最好的重定向而不會丟失會話?請給我例子如何從控制器和JavaScript /視圖做到這一點。
根據您的應用程序池設置,如果在發生重定向時發生了回收過程,則會話狀態可能會丟失。可能您可能會嘗試使用SQL Server會話狀態管理來根據保存在數據庫中的會話內容來管理用戶會話。 –
沒有應用程序池回收,我已經檢查過它們。這是因爲別的東西 –