HTTP Status Code

Aus Online Marketing Wiki
Wechseln zu: Navigation, Suche

Fordert ein Client (z.B. Browser oder Webcrawler) eine Ressource (z.B. URL) an, stellt dieser also eine HTTP-Anfrage, liefert der Server in seiner Antwort im Header einen HTTP Status Code. Dieser enthält Informationen über den Staus der Anfrage, also etwa die Mitteilung, dass die Bearbeitung der Anfrage erfolgreich war oder dass ein Fehler bei der Bearbeitung aufgetreten ist und wo bzw. wie man in diesem Fall den gesuchten Inhalt findet.

Es existiert eine Vielzahl von Status Codes, die jeweils einer Statusklasse mit unterschiedlicher Bedeutung zugeordnet werden können. Die erste Ziffer eines Statuscodes gibt Aufschluss über die Zugehörigkeit zur jeweiligen Statusklasse.

Status Code 1xx – Informationen

Die erste Statusklasse liefert Informationen zur Bearbeitung der HTTP -Anfrage.

Status Code 100 - Continue

Der Server gibt den Status Code 100 aus, wenn der Client seine Anfrage fortsetzen soll. In diesem Fall hat der Server zwar einen Teil der Anfrage korrekt erhalten, wartet nun jedoch auf weitere Anweisungen, um die Anfrage vollständig bearbeiten zu können.

Status Code 102 – Processing

Der Status Code 102 kommt zur Anwendung, wenn der Server eine zeitintensive Anfrage bearbeitet und ein Timeout verhindert werden soll.

Status Code 2xx (Erfolgreich)

Status Codes der zweiten Statusklasse stehen für erfolgreich bearbeitete Anfragen.

Status Code 200 – OK

Die Ausgabe des Status Codes 200 stellt den Normalfall dar. Der Server verwendet diesen, wenn er die Anfrage des Clients erfolgreich bearbeitet hat und übermittelt gleichzeitig die von ihm angeforderten Daten.

Status Code 3xx – Umleitung

Die Status Codes der dritten Statusklasse finden Verwendung, wenn der Client zur erfolgreichen Bearbeitung der Anfrage weitere Maßnahmen ergreifen muss. Sie werden insbesondere im Falle eines Domain-Wechsels angewendet, um Webseitenbesuchern und Suchmaschinen mitzuteilen, dass Webseiteninhalte unter einer neuen URL abgerufen werden können sowie um diese direkt an die neue URL weiterzuleiten. Im Rahmen dieser Statusklasse gehören die Statuscodes 301 und 302 zu den relevantesten.

Status Code 301 – Moved Permanently

Der Status Code 301 teilt dem Client mit, dass die von ihm angeforderte Ressource (z.B. URL) nicht mehr unter der aufgerufenen, nunmehr ungültigen Adresse, sondern fortan dauerhaft unter einer anderen Adresse verfügbar ist (Redirect). Der Client wird dann vom Server unmittelbar an die neue Adresse weitergeleitet.

Bedeutung für die Suchmaschinenoptimierung

Bei der Suchmaschinenoptimierung kommt dem Status Code 301 insbesondere für die Aufrechterhaltung von bereits vorhandenem Linkjuice eine hohe Bedeutung zu. Findet nämlich der Webcrawler einen Status Code 301 vor, so löscht er nicht nur die alte URL aus dem Suchindex, sondern überträgt auch den dort vorhandenen Linkjuice auf die neue URL, die er wiederum in den Index aufnimmt.

Im Rahmen der OnPage-Optimierung sollten daher alle veralteten Versionen einer URL daraufhin überprüft werden, ob die Weiterleitungen auf die neuen URLs mit dem Statuscode 301 erfolgen, vor allem, wenn diese URLs relevante Backlinks erhalten haben. Würden hier Weiterleitungen mit dem Statuscode 302 eingerichtet, gingen diese Links verloren und es müsste von Neuem mit dem Linkbuilding begonnen werden. Darüber hinaus würden die alten URLs nicht aus dem Suchmaschinenindex gelöscht und mit der neuen URL um das Ranking konkurrieren.

Bei Einrichtung einer 301-Weiterleitung sollten möglichst nicht mehr als vier Weiterleitungen pro Anfrage erfolgen, da es sonst zu Crawling-Fehlern kommen kann. Mit den Google Webmaster Tools kann überprüft werden, ob und bei welchen Seiten der Googlebot aufgrund von Weiterleitungsfehlern Probleme beim Crawlen hat.

Möglichkeiten der Weiterleitung von URLs

Die Einrichtung von Weiterleitungen unter Rückgriff auf den Status Code 301 kann auf unterschiedliche Art und Weise erfolgen. Webserver, die das Apache-Modul mod_rewrite aktiviert haben (z.B. möglich bei Linux oder Unix Servern) können den Status Code bspw. mit folgender Anweisung in die .htaccess-Datei eintragen:

Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^domain.com [nc]
rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

Darüber hinaus kann bei Nutzung von PHP folgender Code in die alte Datei eingetragen werden, um eine 301-Weiterleitung einzurichten, die im Header zurückgegeben wird:

<?php
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.new-url.com" );
?>

Status Code 302 – Found

Den Status Code 302 gibt der Server aus, wenn die angeforderte Ressource temporär unter einer anderen Adresse erreichbar ist. Gleichzeitig wird der Client an die neue Adresse weitergeleitet. Der wesentliche Unterschied zum Status Code 301 liegt darin, dass die alte Adresse nicht ihre Gültigkeit verliert. Sie wird weiterhin vom Webcrawler durchsucht und indexiert. Der Status Code 302 sollte daher nicht angewendet werden, um den Webcrawler (und Besucher) über eine neue Adresse zu informieren. Dies sollte nur dann und unter Rückgriff auf den Statuscode 301 erfolgen, wenn eine Ressource dauerhaft über eine andere Adresse angefordert werden soll.

Status Code 4xxx – Anfrage-Fehler

Status Codes der vierten Statusklasse informieren den Client über Fehler bei der Anforderung einer Ressource, die die Verarbeitung durch den Server verhindern.

Status Code 404 – Not Found

Der Status Code 404 ist einer der am häufigsten verwendeten Status Codes. Er findet immer dann Verwendung, wenn die vom Client angeforderte Ressource nicht auf dem Webserver gefunden werden konnte oder dort nicht vorhanden ist, etwa, weil die angeforderte Ressource (z.B. eine URL) an einen anderen Ort umgezogen ist. Darüber hinaus wird der Status Code 404 angezeigt, wenn der Client eine URL falsch oder unvollständig in die Adresszeile des Browsers eingibt.

Bedeutung für die Suchmaschinenoptimierung

Um eine Indexierung von nicht vorhandenen Seiten durch Google und andere Suchmaschinen zu verhindern, sollte stets überprüft werden, ob der Webserver tatsächlich den Statuscode 4 zurückliefert, wenn eine solche Seite angefordert wird. In den Google Webmaster Tools können vorhandene 404-Fehlerseiten, die durch den Googlebot nicht gecrawlt werden können, abgerufen werden. Hier kann auch geprüft werden, ob interne oder externe Verlinkungen auf 404-Fehlerseiten existieren und die verlinkte Fehlerseite gegebenenfalls angepasst werden. Mit Blick auf den Webseitenbesucher ist es empfehlenswert, eine benutzerdefinierte 404-Fehlerseite zu erstellen, die diesem dabei behilflich ist, den angeforderten Inhalt zu finden, so dass dieser seinen Webseitenbesuch fortsetzt. In den Google Webmaster Tools sind zahlreiche Vorschläge für das Erstellen von 404-Fehlerseiten erhältlich.

Status Code 5xx – Server-Fehler

Status Codes der Statusklasse fünf werden bei internen, meist serverseitig verursachten Fehlern ausgegeben.

Status Code 500 – Internal Server Error

Der Status Code 500 ist ein „Sammel-Status-Code“, der immer dann zurückgeliefert wird, wenn der Server die Anforderung des Clients aufgrund eines internen Serverfehlers nicht ausführen kann.

Status Code 503 – Service Unavailable

Der Status Code 503 wird ausgeliefert, wenn der Server vorübergehend nicht zur Verfügung steht, etwa, weil gerade Wartungsarbeiten durchgeführt werden oder der Server überlastet ist. Im „Retry-After“-Header-Feld kann der Client über den Zeitpunkt informiert werden, zu dem seine Anfrage aller Vorrausicht nach wieder bearbeitet werden kann.

Status Code 9xx – Proprietäre Statuscodes

Status Code 906

Der Webserver liefert den Status Code 906 aus, wenn ein Übermittlungsfehler aufgetreten ist und die Anfrage erneut gesendet werden soll.

Status Code 950

Der Status Code 950 wird verwendet, wenn ein Fehler bei der Interpretation der Administrator-Anfrage aufgetreten ist.