Ich habe eine Anwendung mit ASP.NET. Ich habe verschiedene Domains und verschiedene Subdomains. Ich möchte, dass die Domänen die Sitzung mit ihren Subdomains teilen.Speichern Sitzungscookie für Gruppen von Sub-Domänen in ASP.NET IIS7
zum Beispiel Zugriff auf die folgenden Domänen diese Anwendung:
www.example1.com
print.example1.com
www.example2.com
print.example2.com
Wenn ein Benutzer www geht. example1.com und print.example1.com möchte ich dieselbe Sitzung verwenden. Wenn der Benutzer zu www.example2.com und print.example2.com gehen möchte, möchte ich, dass er eine andere Sitzung als das * .example1.com verwendet.
Die Art, wie ich damit umgehen verwendet, um ein Hack in page_load war, die perfekt in IIS6 arbeitet.
Response.Cookies [ "ASP.NET_SessionId"] Value = Session.SessionID;
Response.Cookies ["ASP.NET_SessionId"]. Domäne = SiteUtility.GetCookieDomain();
(SiteUtility.GetCookieDomain zurückkehren würde .example1.com oder .example2.com abhängig von der URL der Anfrage)
Leider ist dies scheint nicht mehr für iis7 zu arbeiten. Jede Subdomain/Domain, zu der ein Benutzer geht, erhält ein neues Session-Cookie.
Ich fand dann den Eintrag web.config:
'< httpCookies domain = ". Example1.com" />.
Dies funktioniert hervorragend für die Freigabe Session-Cookie zwischen example1.com-Subdomains. Leider wird dadurch der Sitzungsstatus für * .example2.com komplett zerstört.
Irgendwelche Ideen, wie ich das lösen kann?
Dank allen für Ihre Hilfe. Ich stellte fest, dass eine der Subdomänen in ie8 in einem vertrauenswürdigen Zustand war, während die andere nicht war. Wenn sich beide in einem vertrauenswürdigen Zustand befinden (und zwar in einem nicht vertrauenswürdigen Zustand), funktioniert es. Pauli verbrachte die meiste Zeit mit mir, also möchte ich ihm die Antwort geben. –