In letzter Zeit bin ich auf ein Problem gestoßen, bei dem IIS aufgrund von Abstürzen jede Minute abstürzte nicht behandelte Ausnahmen. In den Anwendungsprotokollen war nur die Ereignisanzeige enthalten, die besagt, dass der Anwendungspool „xyz“ unerwartet beendet wurde.
Dies geschah in IIS 6 mit .Net 4.
Haben Sie ein ähnliches Problem?
Der Grund, warum IIS aufgrund einer nicht behandelten Ausnahme immer wieder abstürzt, liegt in der Standardrichtlinie für eine unbehandelte Ausnahme wurde im .NET Framework 2.0 und einer höheren Version geändert.
Das Verhalten dieser Richtlinie besteht darin, den Arbeitsprozess zu beenden.
Mögliche Korrekturen
Um dies dauerhaft zu beheben, muss ein Entwickler alle Ausnahmen in der Anwendung behandeln.
Um dieses Problem zu umgehen, können Sie die Richtlinie für nicht behandelte Ausnahmen wieder in Legacy (.Net Framework 1.x) ändern.
- Melden Sie sich bei einem problematischen IIS-Server an
- Finden Sie heraus, welche Version von .Net Sie verwenden
- Gehen Sie zum folgenden Ordner
% WINDIR% Microsoft.NETFramework$ .Net_Version
- Machen Sie ein Backup von Aspnet.config Datei
- Ändern oder hinzufügen, wenn Folgendes nicht vorhanden ist
<legacyUnhandledExceptionPolicy enabled="was immer dies auch sein sollte."/>
- Starten Sie den IIS-Anwendungspool neu
Sie werden feststellen, dass IIS Abstürze verhindert und Sie wieder im Geschäft sind.
Wenn Sie Master in IIS-Administration sein möchten, überprüfen Sie dies Kurs von Hassan Aboul Hassan.