Ich habe eine einfache ASP.NET MVC 3 Website gehostet in IIS 7.0 und habe Schwierigkeiten beim Anzeigen einer benutzerdefinierten HTTP-Fehlerseite für 404.13 http Statuscode.
Ich habe die folgende Konfiguration in meiner Web.Config
%Vor%Wenn ich zu einer Seite navigiere, die nicht existiert, wird meine Fehlerseite korrekt gerendert. Wenn ich jedoch eine Datei größer als 1 MB hochlade, wird mir eine leere 404-Antwort angezeigt. Die URL wird nie ausgeführt. Wenn ich den responseMode zu Redirect ändere, wird der Benutzer korrekt umgeleitet.
Der benutzerdefinierte Fehler wird wegen der Sperrfunktion des Konfigurationssystems höchstwahrscheinlich nicht angezeigt. Versuchen Sie den folgenden Befehl, um es zu entsperren:
%Vor%Nach ein paar Tagen, in denen ich mit den Seiten RequestFilters und CustomError herumgespielt habe, hat es endlich für mich funktioniert.
Ich hatte das gleiche Problem mit IIS 7.5 im integrierten Modus.
Schließlich habe ich es aufgegeben, den Fehler in der web.config-Methode zu behandeln und die Fehlererkennung und -behandlung stattdessen an die Application_EndRequest-Anwendung verschoben:
Fügen Sie Ihrer global.asax-Datei Folgendes hinzu:
Wenn Sie kein global.asax (MVC) haben, können Sie stattdessen den Seitenfehler hinzufügen.
%Vor%Tags und Links asp.net-mvc-3 iis-7