Laden...

IIS/Asp.Net: Umleitung auf Wartungsseite, wenn Anwendung nicht verfügbar

Erstellt von pinki vor 8 Jahren Letzter Beitrag vor 8 Jahren 3.077 Views
pinki Themenstarter:in
709 Beiträge seit 2008
vor 8 Jahren
IIS/Asp.Net: Umleitung auf Wartungsseite, wenn Anwendung nicht verfügbar

Hallo Gemeinde,

ich schreibe gerade ein Spiel für den Browser mit ASP.NET 5, SignalR und MongoDB.
Es gibt einen GameHub, der ein statisches Feld enthält, welches den Spielzustand hält und das für den Spielablauf verantwortlich ist.

In ein paar Tagen würde ich gerne erste Tests mit einer ausgewählten Benutzergruppe starten.

Während dieser Zeit kommt es mit Sicherheit häufig vor, dass ich die Anwendung neu deploye.
Dafür muss ich allerdings die komplette Site oder den AppPool stoppen, weil sonst nicht alle Dateien überschrieben werden können, da die DLLs vom MongoDB-Treiber noch verwendet werden.

Was ich gern hätte ist eine Art Wartungsmodus - und hierbei stehe ich auf dem Schlauch.
Vor dem Neu-deployen eine Anweisung an alle aktiven Spieler schicken, sodass eine Wartungsseite angezeigt wird, ist nicht das Problem. Mein Problem ist, dass ich gern - falls jemand während des Deploy-Vorgangs die Seite aufruft - eine Seite mit einem Hinweis auf Wartung oder ähnliches anzeigen lassen würde statt der HTTP-Status-503-Meldung. Genau hierfür fehlt mir leider jeglicher Ansatz.

Gruß Micha

U
135 Beiträge seit 2009
vor 8 Jahren

Hi,

mir würde da spontan das Stichwort "Custom error page" einfallen.

pinki Themenstarter:in
709 Beiträge seit 2008
vor 8 Jahren

Hi SomeoneYouKnow,
vielen Dank für den Hinweis.

Greift das denn auch, wenn die Site oder der AppPool deaktiviert wurde?

16.842 Beiträge seit 2008
vor 8 Jahren

Nein; es greift nichts spezifisches, wenn ein AppPool und damit die Anwendung aus ist.
Es greift auch nichts, wenn der IIS aus ist. Dann gibts einfach ein Connection refused.

In der Regel legt man zwei Anwendungen ein.
Ein Produktivanwendung und einmal eine Wartungsanwendung. Produktiv wird off genommen und Wartung wird gestartet; beide haben die gleichen Bindings.
Anders ist das in der Breite (ausser man setzt auf das Web Farm Framework über mehrere Server) nicht flüssig zu machen.

pinki Themenstarter:in
709 Beiträge seit 2008
vor 8 Jahren

Dann werde ich das mit den zwei Anwendungen mit den selben Bindings machen.

Vielen Dank!