503: Statuscode bei Problemen

Nichts wirklich neues erzählen Tomer Honen und Kaspar Szymanski in Googles Webmaster-Zentrale zum Umgang mit geplanten Wartungszeiten einer Website, aber noch immer sieht man viel zu oft Seiten, die für jeden noch so unpassenden Fall einen Statuscode 200 ausliefern, deshalb will ich es auch hier noch einmal aufgreifen.

Denn nicht nur für den Fall, dass eine Seite nicht gefunden wurde oder jetzt unter einer anderen URL erreichbar ist gibt es Statuscodes, auch, dass eine Seite kurzzeitig einmal nicht erreichbar ist, regelt RFC 2616:

10.5.4 503 Service Unavailable
The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.

Das ganze kann man mit php sehr einfach erreichen, indem man den folgenden Code an den Anfang der Seite setzt:

header("HTTP/1.1 503 Service Temporarily Unavailable");
header("Retry-After: Tue, 25 Jan 2011 15:00:00 GMT");
header("Connection: Close");

Retry-After und Connection-Feld sind dabei optional. In ersterem kann man eine Info mitgeben, wann der Spider wieder vorbeischauen soll. Dabei ist entweder ein absolutes Datum möglich oder eine Angabe in Sekunden. Connection sorgt dafür, dass die Verbindung nicht als persitent angesehen werden soll.

Während man bei geplanten Ausfallzeiten das ganze sehr gut vorbereiten und implementieren kann empfiehlt Google den Statuscode 503 für weitere Probleme, die sich nicht so leicht vorhersehen lassen, etwa Serverausfälle, Bandbreitenüberschreitungen oder auch Baustellenseiten. In jedem Fall empfiehlt es sich aber, die Seite darüber hinaus noch zu gestalten, um dem menschlichen Besucher eine Information zukommen zu lassen, was der Grund für den Ausfall ist und bis wann damit gerechnet werden kann, dass wieder alles funktioniert.

Denn außer der Information „geht nicht” transportieren solche Standardseiten normalerweise keine brauchbaren Informationen für den Besucher, wie man heute schön sieht, wenn man Teuxdeux aufruft:

Im Vergleich dazu noch unsere 503-Seite, die wir im vergangenen Jahr geschaltet haben, als Hetzner unseren Server auf einen Laster geladen und von Bayern nach Sachsen transportiert hat:

Ich bin Web Developer und arbeite als Lead Developer bei WIBROS. Ich liebe das Internet, Baseball, Softball, Bier und die Farbe orange. Ich hab früher mal zu viel Kaffee getrunken.

Leave a Reply

Required fields are marked *.