Ich entdecke viele komplizierte Problemumgehungen für Classic ASP in IIS 7.5 für den Umgang mit der benutzerdefinierten Fehlerbehandlung nach IIS 6 für einen bestimmten Fehlercode, normalerweise 404. Ich hoffe, dies hilft Menschen, die darauf stoßen.
Ich verwende IIS 7.5 R2, aber ich denke, dies gilt allgemein für IIS 7.
Wenn Ihre web.config-Datei Folgendes enthält:
<customErrors mode="On">
... im IIS-Manager haben Sie wahrscheinlich unter Fehlerseiten die Option Features bearbeiten ausgewählt, um die Funktionen im Bereich Einstellungen für Fehlerseiten bearbeiten zu ändern. Wenn Sie dies in Benutzerdefinierte Fehlerseiten ändern (customErrors mode = "On"), müssen Sie die Behandlung jeder einzelnen Fehlernummer einrichten. Also tu das nicht.
Alles, was Sie tun müssen, ist RECHTS auf die Fehlernummer zu klicken, die Sie behandeln möchten, und Bearbeiten auszuwählen. Dort können Sie auf eine benutzerdefinierte Fehlerseite verweisen, die Sie erstellen oder auf eine URL umleiten. Anstatt eine benutzerdefinierte Fehlerseite zu erstellen, die Sie aktualisieren müssen, wenn sich Ihr Site-Design oder Ihre Menüs ändern, empfehle ich immer, zur Homepage umzuleiten und dem Querystring etwas wie "syserror" hinzuzufügen, das Sie dann von der Homepage aus verarbeiten können. Meine Technik besteht darin, dies in der Homepage-Skripterstellung zu überprüfen und eine freundliche Nachricht anzuzeigen, in der sie wissen, dass ihre Seite nicht gefunden wurde und sie zur Homepage weitergeleitet wurden.
Ihre web.config-Datei würde ungefähr so aussehen:
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath=""
path="http://yoursite.com/index.asp?syserror" responseMode="Redirect" />
</httpErrors>
Ich schlage außerdem vor, dass Sie aus Sicherheitsgründen keine detaillierten Fehlermeldungen auf einer Produktionswebsite aktivieren, auch nicht für lokale. Schlagen Sie einfach die Details in Ihrem Systemprotokoll nach.
Nur meine 2 Cent, hoffe es hilft und bitte lassen Sie mich wissen, wenn Sie denken, dass ich in irgendetwas hier falsch bin.