Global.asax wird in IIS7 nicht für ASPX-Seiten ausgelöst

Wir betreiben einen Linkumleitungsdienst, der Links in verschiedenen Formaten verarbeiten kann. Eines dieser Formate besteht darin, die Ziel-URL an das Ende des Links anzuhängen, z. B.

http: //url.fwd/abcd/http: //www.mydomain.com/page.asp

Dies funktionierte in den letzten zwei Jahren auf einer Windows Server 2003 / IIS6-Box, aber jetzt versuchen wir, auf ein Windows Server 2008 / IIS7-Setup umzusteigen, und das funktioniert nicht mehr.

Ich habe über das Problem mit Doppelpunkten in der URL gelesen, aber es wirkt sich nicht auf Seiten aus, die nicht mit ".aspx" enden. Zum Beispiel

http: //url.fwd/abcd/http: //www.mydomain.com/page.ph

would gut umleiten.

http: //url.fwd/abcd/http//www.mydomain.com/page.asp

funktioniert auch gut (beachten Sie das Fehlen eines zweiten Doppelpunkts). Obwohl es sich um eine falsche URL handelt, wird sie von unserem URL-Weiterleitungssystem verarbeitet, das eine benutzerdefinierte 404-Seite verwendet. Auf dem alten System hatten wir ein ähnliches Problem, daher wurde eine Methode in Global.asax> Application_Error geschrieben, die speziell für die Behandlung des '.aspx'-Falls geeignet ist.

Auf unserem neuen Server wird der Application_Error nie in Global.asax geworfen. Stattdessen erhalte ich eine System.NotSupportedException - "Das angegebene Pfadformat wird nicht unterstützt". Diese System.NotSupportedException ist genau der Fall, den wir auf der Seite Global.asax behandeln, sodass sie definitiv nicht ausgelöst wird.

Ich habe die in mehreren Forenbeiträgen angegebenen Registrierungsschlüssel geändert: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ ASP.NET VerificationCompatibility = 1 HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ HTTP | Parameters AllowRestrictedChars = 1

Ich habe versucht, die Einstellungen für die Handlerzuordnungen für .aspx zu ändern.

Ich habe versucht, den App-Pool so einzustellen, dass er den klassischen Modus anstelle des integrierten Modus verwendet. Dies führt jedoch zu einem völlig anderen Fehler, bei dem statische Inhalte wie Bilder und CSS überhaupt nicht angezeigt werden. Ich habe überprüft, ob statischer Inhalt in den Windows-Funktionen aktiviert ist. Im klassischen Modus wirft die '.aspx'-Anfrage zwei Bad Request-Fehler mit absolut keiner Information ab. Der Code der Fehlerseite, die ich erhalte, ist buchstäblich

Bad Request <html> <body> Bad Request </ body> </ html>

UPDATE: Ich habe die Zuordnung des Handlers für statische Dateien zu dem Formular auf dieser Seite geändert.http: //improve.dk/blog/2006/12/11/making-url-rewriting-on-iis7-work-like-iis Allerdings ist dies, wie der Autor zu Recht betont, ein Hack und nicht die richtige Vorgehensweise unter IIS7. Es behebt auch nur das Problem mit statischen Dateien im klassischen Modus. '.aspx' Seiten werfen im klassischen Modus immer noch einen Fehler.

ber Gedanken oder Anregungen würde ich mich an dieser Stelle sehr freue

Antworten auf die Frage(4)

Ihre Antwort auf die Frage