Zusammenfassung
ASP.Net sendet Set-Cookie
bei Verwendung von IE 10 keinen Header zurück. Dies bedeutet, dass Sie sich beispielsweise nicht mit IE10 bei einer ASP.Net-Site anmelden können, wenn Sie beispielsweise die Formularauthentifizierung verwenden.
Detail
Wir testen derzeit eine unserer älteren Web-Apps gegen IE 10 [Vorschau 2].
Beim Versuch, sich mit der Formularauthentifizierung anzumelden, wird Set-Cookie
in der Antwort kein Header angezeigt, wenn der Benutzeragent der von IE 10 ist. Wir haben dies mit einer leeren .Net 2- und .Net 4-Site versucht.
Da wir es nicht glauben konnten / wollten, haben wir sogar die folgende HTTP-Anfrage manuell ausgeführt telnet
- nachdem wir alle üblichen Tools verwendet hatten - und die gleiche Antwort erhalten.
GET http://test.ourdomain.co.uk/ HTTP/1.1
Accept: */*
Host: test.ourdomain.co.uk
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)
Content-Length: 0
Die obige HTTP-Anforderung gibt Set-Cookie
in der Antwort no zurück. Aber wenn wir einfach den User-Agent ändern, Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/6.0)
funktioniert es!
Kann jemand anderes dies replizieren? Ich kann kein bekanntes Problem mit IE10-Cookies finden, außer einem Problem, das nicht standardmäßige URL-Muster betrifft.
Hotfix
Nachdem devio die ursprüngliche Antwort mit einer Problemumgehung veröffentlicht hat , hat nullptr bestätigt, dass es jetzt einen Hotfix dafür gibt .
http://support.microsoft.com/kb/2600088
Ich habe den Hotfix zur Hauptfrage befördert, da er nur zum späteren Nachschlagen einfacher ist, aber bitte stimmen Sie die genannten Benutzer ab.
quelle
Antworten:
Fand diesen Eintrag auf MS Connect , ist das Verhalten ein erkannter Fehler.
Vorgeschlagene Problemumgehung (aus dem Eintrag):
quelle
Das Problem liegt bei einigen IIS-Instanzen, die glauben, dass IE10 ein browserloser Browser ist (dh Cookies können nicht unterstützt werden). In unserem Problemfall hat der Server das Authentifizierungscookie gesetzt und an den Browser zurückgesendet, das Cookie dann jedoch bei nachfolgenden Anforderungen ignoriert.
Die Lösung besteht darin, entweder die Browserfunktionen so zu patchen, dass IE10 Cookies ausführen kann (siehe eine andere Antwort auf dieser Seite), oder das Standardverhalten zu ändern, um die Verwendung von Cookies zu erzwingen, selbst wenn der Browser keine Cookies ausführen kann.
Wir haben unserem Formularbereich in web.config gerade Folgendes hinzugefügt:
cookieless = "UseCookies"
quelle
Für dieses Problem ist ein Hotfix verfügbar [1].
1) http://support.microsoft.com/kb/26000881) http://support.microsoft.com/kb/2600217 (ersetzt vorherige KB)
[2] schlägt außerdem vor, dass Windows Update im Januar 2012 veröffentlicht wird.
2) http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx
quelle
Danke für die Hilfe. Es hat nein funktioniert.
Ich habe die Datei von der Site nach kopiert
C:\WINDOWS\microsoft.net\Framework\v2.0.50727\CONFIG\Browsers
In Eingabeaufforderung ausführen
C:\WINDOWS\microsoft.net\Framework\v2.0.50727>aspnet_regbrowsers.exe -i
Starten Sie den IIS neu.
Getestet die Seite und es funktioniert ohne Fehler.
Nochmals vielen Dank für das Feedback
quelle
Ein Update für nullptr Antwort.
Ich habe heute versucht, Microsoft KB2600088 herunterzuladen. Nachdem ich den Link per E-Mail erhalten hatte, klickte ich darauf und führte mich zu der Seite, auf der steht, dass er nicht mehr verfügbar ist.
Versuchen Sie Folgendes : http://support.microsoft.com/kb/2600217
Dieser Link ersetzt KB2600088 und KB2628838.
MIcrosoft .Net Framework 4.5 ist jetzt ebenfalls verfügbar.
quelle
Installierte die verschiedenen Patches, die alle erwähnen, und aus welchem Grund auch immer, das Problem wurde nicht behoben.
Installierte .NET Framework 4.5 Full und das Problem wurde behoben.
Sie müssen keine Projekte auf Ziel 4.5 aktualisieren. Installieren Sie es einfach auf dem Server.
quelle