Zur Anpassung der 404-Handhabung und basierend auf dem Vorschlag des Hosting-Unternehmens verwenden wir derzeit das folgende web.config-Setup. Wir haben jedoch schnell festgestellt, dass bei dieser Konfiguration alle Seitenfehler (500 Fehler) auch auf diese benutzerdefinierte Fehlerseite umgeleitet werden. Wie kann ich diese Konfigurationsdatei ändern, damit 404 weiterhin mit benutzerdefinierten Dateien verarbeitet werden kann, während weiterhin Fehler auf der Seite angezeigt werden können?
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.webServer>
<httpErrors errorMode="DetailedLocalOnly" defaultPath="/Custom404.html" defaultResponseMode="ExecuteURL">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" prefixLanguageFilePath="" path="/Custom404.html" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
<system.web>
<customErrors mode="On">
<error statusCode="404" redirect="/Custom404.html" />
</customErrors>
</system.web>
</configuration>
iis
.net
asp-classic
web.config
Squillman
quelle
quelle
Antworten:
Versuche dies -
Die 404-Fehlerseite ist 404.html und befindet sich in meinem Stammverzeichnis, ebenso die 500-Seite
quelle
Klassischer ASP durchläuft den Fehler in IIS7 standardmäßig nicht. Um dies für eine Site zu aktivieren, führen Sie Folgendes über die Befehlszeile aus und ersetzen Sie {Site-Name} durch Ihre Name-Site:
Darüber hinaus stellen Sie sicher , drehen weg freundlich Fehler IIS. Sie sind wirklich nicht freundlich.
quelle
<httpErrors existingResponse="PassThrough"></httpErrors>
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:
... 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:
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.
quelle
Fügen Sie einfach einen weiteren Wert für 500 Fehler hinzu.
quelle