Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen, das Problem zu beheben, das auftritt, wenn Sie die Einstellung <httpRuntime enableVersionHeader ="false"/> zum Zustandsserver "web.config" (Master web.config) hinzufügen, um den Header auszublenden, während Sie die X-AspNet-Version: 2.0.50727 Sitzungsverwaltung mit ASP.NET Statusdienst verwenden.
Ursprüngliche Produktversion: Microsoft ASP.NET
Ursprüngliche KB-Nummer: 2836759
Problembeschreibung
Wenn Sie beim Verwenden der Sitzungsverwaltung mit ASP.NET Statusdienst die Einstellung <httpRuntime enableVersionHeader ="false"/> zum Statusserver "web.config" (Master web.config) zum Ausblenden des X-AspNet-Version: 2.0.50727 Headers hinzufügen, wird möglicherweise die folgende Fehlermeldung angezeigt:
HttpException (0x80004005): Der Sitzungsstatusserver kann nicht verwendet werden, da diese Version von ASP.NET Sitzungsstatusserver, Version 2.0 oder höher, erfordert.
Diese Ausnahme tritt auf, wenn der Sitzungscache zum ersten Mal verwendet wird, nachdem die Anwendung auf dem Server veröffentlicht wurde, oder nachdem IIS neu gestartet wurde oder nachdem der Anwendungspool wiederverwendet wurde. Nachfolgende Verwendungen des Sitzungscaches nach dem Auslösen der ersten Ausnahme führen nicht zu einem Fehler. Der Sitzungscache funktioniert weiterhin ordnungsgemäß, bis die nächste Anwendung erneut veröffentlicht, IIS-Neustart oder Anwendungspool-Wiederverwendung wiederveröffentlicht wird.
Ursache
Der X-AspNet-Version: 2.0.50727 Header wird vom Statusdienst an IIS gesendet. Beim Senden der Antwort an die Webanwendung sollte der Statusserver diesen Header einschließen.
Wenn wir die Einstellung <httpRuntime enableVersionHeader ="false"/> zum Zustandsserver "web.config" (Master web.config) hinzufügen, wird dieser Header nicht vom Statusserver an IIS gesendet und löst daher die oben genannte Ausnahme aus.
Lösung
Fügen Sie
<httpRuntime enableVersionHeader ="true"/>der Master-Datei "web.config" hinzu. Die Master-Datei "web.config" wird inC:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.configoderC:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\CONFIG\web.configje nach Bitanzahl gefunden.Zur lokalen web.config der Anwendung hinzufügen
<httpRuntime enableVersionHeader ="false"/>.Notiz
Stellen Sie sicher, dass Sie den Statusdienst nach den Konfigurationsänderungen neu starten.
Weitere Informationen
Da der X-AspNet-Version: 2.0.50727 Header vom Statusserver gesendet wird, stellt die Einstellung <httpRuntime enableVersionHeader ="true"/> im Masterweb.config sicher, dass der Statusserver den Header an IIS sendet. Wenn <httpRuntime enableVersionHeader ="false"/> "web.config" auf Anwendungsebene festgelegt ist, sendet IIS den Header nicht an den Browser, und Sie können den X-AspNet-Version: 2.0.50727 Header nicht in einer Netzwerkablaufverfolgung sehen.
Eine bessere Möglichkeit zum Überwachen des Netzwerkdatenverkehrs besteht darin, nur <httpRuntime enableVersionHeader ="true"/> in der Master-Web.config festzulegen, und dann sehen Sie in einer Netzwerkablaufverfolgung den folgenden Codeausschnitt mit den Framedetails, die vom Statusserver von ASPNET an IIS gesendet werden.
00 15 5D F4 C0 6D 00 15 5D F1 3E 65 08 00 45 00 00 7A 79 D2 40 00 80 06 00 00 AC 16 F2 11 AC 16
F2 2F A5 B8 12 E4 2E 55 75 CA 57 D4 A3 18 50 18 FF 15 3C DB 00 00 32 30 30 20 4F 4B 0D 0A 58 2D
41 73 70 4E 65 74 2D 56 65 72 73 69 6F 6E 3A 20 32 2E 30 2E 35 30 37 32 37 0D 0A 43 61 63 68 65
2D 43 6F 6E 74 72 6F 6C 3A 20 70 72 69 76 61 74 65 0D 0A 43 6F 6E 74 65 6E 74 2D 4C 65 6E 67 74
68 3A 20 30 0D 0A 0D 0A
..]ôÀm..]ñ>e..E..zyÒ@.?...¬.ò.¬.ò/¥¸.ä.UuÊWÔ£.P.ÿ.<Û..200 OK..X-AspNet-Version: 2.0.50727..
Cache-Control: private..Content-Length: 0....