Ausschalten IIS8 Benutzerdefinierte Fehler für das Klassische ASP - Potenial bug im IIS?
Ich glaube, ich habe einen Fehler gefunden in Bezug auf die IIS-Fehler-Seiten-system.
Hinweis:
- Ich bin nicht mit .NET-Fehler-Seiten - dies ist auf Off gesetzt
Das problem:
Wenn Sie eine benutzerdefinierte Fehlerseite, ist das setup für die 500.100 (Classic-ASP) - Antwort-code, IIS sendet immer eine benutzerdefinierte Fehlerseite, auch wenn errorMode eingestellt ist Detaillierte. Der einzige Weg, um IIS zu senden, der Fehler ist explizit entfernen Sie den Eintrag in der web.config.
ZB:
<remove statusCode="500" subStatusCode="100"/>
or
<clear/>
Hinweis - das folgende hat nicht Arbeit (die funktioniert mit allen anderen codes):
<remove statusCode="500" subStatusCode="-1"/>
Mein Szenario:
- IIS 8 (ich bin nichts, wenn das Problem besteht, die in älteren Versionen von IIS)
- Website läuft .NET 2.0 - Classic-pipeline
- Feature Delegierung auf Fehler-Seiten eingestellt nur Lesen
- Fehler " Seite einrichten im IIS wie folgt (aufgrund der Delegierung von Features vor, diese Einträge werden nicht im web.config):
- 404 - /path/to/404.htm - ExecuteURL
- 500 - /path/to/500.htm - ExecuteURL
- 500.100 - /path/to/500.htm - ExecuteUrl
Ausschalten Benutzerdefinierte Fehler:
Damit schalten Sie die benutzerdefinierte Fehler, alles, was ich tun müssen, ist:
- Laden IIS
- Laden
Error Pages
- Klicken Sie auf
Edit Feature Settings
- Wählen Sie
Detailed Errors
Diese arbeiten erfolgreich für alle codes außer Classic ASP 500-Fehler (status-code 500.100).
Nur so bekomme ich die richtige Klassisches ASP-Fehler, um das setup die folgende (die verlangt mich zu ändern der Delegierung von Features Lesen/Schreiben):
<system.webServer>
<httpErrors errorMode="Detailed">
<clear/>
OR
<remove statusCode="500" subStatusCode="100"/>
</httpErrors>
</system.webServer>
Zusammenfassung
Es scheint, dass, wenn ein 500.100 benutzerdefinierte Fehlerseite einrichten, dann die Einstellung Detaillierte Fehler zu wahren hat nicht Arbeit für das Klassische ASP-500-Fehler.
Ist das ein bug oder bin ich etwas fehlt?
- technet.microsoft.com/en-us/library/cc753103%28v=ws.10%29.aspx können Sie nicht verwenden, die benutzerdefinierte 500 Fehler Seite.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sein ein bekannter bug, den wir auch bekommen und arbeiten, um es durch das entfernen der 500-Fehler und anstatt Links auf unsere custom-Seite von "wenn Sie nichts finden else zu send 'em" Teil der Konfiguration.
(Ich kann mich nicht erinnern aus der hand, was seine genannt)
Versuchen zu ändern Ihr web.config in dieser Weise (es funktionierte für mich mit IIS 7.5).
Ersetzen Sie die Zeile
mit
Dies ist, weil standardmäßig IIS7 überwacht den HTTP-status-codes wie die 4xx-und 5xx-erzeugt durch Anwendungen weiter oben in der pipeline.