2013-03-01 184 views
5

我有兩個web應用程序,一個在.net 3.5框架和另一個在.net 4.0框架(帶有Razor的MVC)。我已經在子域中上傳了3.5主框架應用程序和4.0框架應用程序。我想在這個應用程序之間分享會話。我正在使用會話狀態模式作爲sql服務器。我嘗試瞭解決方案,如應用程序名稱在會話SQL服務器連接字符串和修改存儲過程TempGetAppIDASPState數據庫。它在當地非常完美,但是當我上傳到現場時,它不會共享會話。然後我也試着在域之間共享cookie,但它也不起作用。所以我認爲它需要在服務器上進行一些更改,但我不知道在哪裏進行更改。任何人都可以幫忙?兩個域之間的會話共享

+1

他們是否共享相同的應用程序池(不知道這件事情,但它是一個最好的猜測atm)。在本地,我認爲他們會共享相同的應用程序池,這可能是爲什麼它的作品。 – webnoob 2013-03-01 09:34:37

+1

您必須確保2個應用程序連接到相同的數據庫文件並具有相同的應用程序ID(在數據庫上) – Aristos 2013-03-01 10:06:39

+0

http://stackoverflow.com/a/3151315和http://stackoverflow.com中提到的試驗解決方案/ a/2461502? – 2013-03-01 12:09:59

回答

0

在生產環境中最經常不同的事情之一是每個應用程序都有自己的machineKey。您可以使用this generator生成一個,並將其放置到兩個應用程序的配置中,以便他們可以從另一個應用程序解密cookie。默認情況下,會話狀態也有包含會話密鑰的cookie,爲了能夠共享會話,您應該首先能夠共享cookie。

相關問題