Frage

Normalerweise verwende ich App_Offline.htm für die Aufnahme der Website offline. Aber gelegentlich, wenn ich das tun, die Seite gerade hängt (wie in: Browser ewig warten, Server gibt keine Antwort an alle ). Dies scheint auf einer aktualisierbare Website passieren, wenn ich etwas zu ändern, wie eine Kontrolle und später, wenn es nicht schnell genug gehen (Seite hängt), ich Platz app_offline.htm in der Wurzel der Website.

In den meisten Fällen geschieht dies sofort über meine Website. Aber gelegentlich ist es nicht. In diesen Fällen kann ich nicht nur die Website nicht mehr (wenn ich neu starten, fährt das Verhalten). habe den Anwendungspool nicht zu stoppen lassen Sie mich den gleichen app-Pool neu starten. Die beiden einzigen Lösung so weit ist die gesamte IIS-Dienst neu zu starten.

Ich möchte, dies zu verhindern. Ist das ein Fehler in IIS nicht „brechen alle Aktionen“, wenn App_Offline.htm gefunden wird? Ich verwende IIS 7 mit Windows 2008 SP2 64-Bit.

War es hilfreich?

Lösung

IIS sollte nicht Stopp bestehende Aktionen, verhindern nur neue Anforderungen aus gehen durch: Will app_offline.htm Stop aktuelle Anfragen oder einfach nur neue Anforderungen?

Es klingt wie Sie ein Szenario beschreiben, wo Sie ein Steuerelement aktualisieren, versuchen, eine Seite zu laden, und IE klemmt Laden. An diesem Punkt fallen Sie die app_offline.htm und erwarten, dass die Seite sofort zu sehen.

Wenn Sie eine völlig separate / neue Anfrage machen nach app_offline.htm an Ort und Stelle setzt, dann sollten Sie die Seite kommen. Allerdings wird die bestehende Anforderung nicht wie oben verlinkten betroffen sein.

Wenn möglich versuchen, die app_offline.htm Datei bereitstellen, bevor die Steueränderung zu machen.

Andere Tipps

Was ich fand, war, dass meine web.config-Datei einen Fehler in der es entweder hatte oder fehlte. Wenn dies der Fall ist, wird app_offline.htm nicht verarbeitet bekommen.

Ich bin nicht sicher, was Sie unter „Pool die Anwendung stoppen läßt Sie mich nicht den gleichen Anwendungspool neu starten“ ... wenn Sie bedeuten, dass man den Pool nicht neu starten kann unmittelbar nach Stoppen sie, das ist, weil es noch nicht gestoppt ist. In Abhängigkeit von der Anzahl der Arbeitsprozesse in diesem Pool kann es eine Minute dauern, bis sie vollständig nach unten drehen, so dass er den Startbefehl akzeptieren kann.

Auch würde ich denken, dass Sie den Pool, um die app_offline.htm zur Arbeit effektiv sowieso neu starten würden.

Hier ist das Ding. Jedes Mal, wenn Sie die SLN auf dem Server zu öffnen, oder den Code zu aktualisieren, wird es das app_offline Ticket in der Wurzel erstellen. Dies ist die Funktion von asp.net selbst keinen Zugang zu verhindern, dass Ihre Entwicklung zu stören.

Löschen Sie die app_offline manuell jedes Mal, nachdem Sie die SLN öffnen.

hoffen, dass diese Hilfe. Dank.

Ein andere Möglichkeit ist ein fehlender Handler. Die folgende Prozedur ist erforderlich:

ExtensionlessUrlHandler-Integrated-4.0
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top