HTTP Status Codes

HTTP Status Codes sind ein Teil einer Antwort eines Servers auf eine Eingabe einer URL durch einen Benutzer im Internet. Der Status Code teilt dem User mit, ob und wie die Anfrage erfolgreich bearbeitet werden konnte. Wenn Sie unsere Erklärung hier lesen können, dann hat der Server mit einem HTTP Status Code 200 geantwortet. Würden wir die Erklärungen auf eine andere URL verschieben, dann erschienen hier womöglich an dieser Stelle für Sie eine Fehlermeldung, wahrscheinlich ein Status Code 404- not found.

Was bedeuten HTTP Status Codes?

Ruft man eine Webseite auf, sendet der Browser einen HTTP-Request (eine Anfrage) an den Server. Er bittet in also, ihm eine Antwort auszuliefern. Der Server schickt eine Antwort zurück, die zwei Bestandteile hat, den Nachrichtenkopf und die Nachricht. Im Nachrichtenkopf sind die wichtigen Informationen für den Browser hinterlegt. Diese sieht man als Benutzer im Regelfall nicht, sondern Informationen wie ein Bild, Text, Videos, eine Webseite. Anders ist dies, wenn die Anfrage nicht bearbeitet werden kann oder eine vorherige Authentifizierung notwendig ist. Dann sieht man als Benutzer zum Beispiel die berühmte Fehlermeldung „Seite nicht gefunden“, den Status Code 404.

Welche Status Codes gibt es?

Es gibt von diesen HTTP Status Codes, auch wenn man sie als User in den meisten Fällen nicht sieht, jede Menge. Es gibt fünf unterschiedliche Kategorien (Klassen), in denen sich wiederum mehrere dieser dreistelligen Codes sammeln lassen.

Die Status Code-Klassen

Status 1xx: informative Nachrichten
Status 2xx: erfolgreiche Bearbeitung
Status 3xx: Umleitung/Weiterleitung
Status 4xx: Fehler auf Seiten des Clients
Status 5xx: Fehler auf Seiten des Servers

Nach der angezeigten Meldung, also dem dreistelligen Code folgt noch eine kurze Erläuterung, anhand derer man zumindest als Benutzer schnell erfassen kann, um welchen Fehler es sich handelt. Beheben kann man diesen allerdings nicht. Dafür sind dann die Webentwickler da, die sich bei unerwünschten Fehlermeldungen um die Behebung kümmern.

Wichtige HTTP Status Codes

  • An dieser Stelle sollen nur die wichtigsten HTTP Status Codes aufgelistet werden. Neben diesen gibt es noch vielfältige individuelle Fehler, die mit einem Status-Code aufgezeigt werden.
    100 und 102 sind Status Codes, die darauf hinweisen, dass eine Anfrage in ihrer Bearbeitung noch etwas dauern kann. Bei der Meldung 100 ist für das Fortfahren eine Aktion des Clients notwendig. Erst danach kann die Bearbeitung fortgesetzt werden. Der Code 102 meldet Processing und verhindert ein Timeout bei sehr zeitintensiven Anfragen.
  • Wird der Status Code 200 „Ok“ zurückgegeben, können die angeforderten Daten wie gewünscht übermittelt werden. Dies ist also der Standard, bei der Benutzer keine Fehlermeldung, sondern den Inhalt der Webseite angezeigt bekommt.
  • 301, 302 und 304 sind die Codes, die der Server an den Client schickt, wenn es um eine Weiterleitung bzw. Umleitung geht. Bekommt der Client diese Info, muss er eine entsprechende Anweisung parat haben, damit der Browser dem Benutzer die Inhalte anzeigen kann. Beim Status 301 ist der Inhalt dauerhaft an eine andere Stelle verschoben, beim 302er nur für eine gewisse Zeitspanne. Beim Status Code 303 bekommt der Server die Rückmeldung, dass sich seit dem letzten Aufruf nichts geändert hat und er auf den Cache zurückgreifen kann, um den Inhalt anzuzeigen. Das spart Zeit und Bandbreite.
  • In der vierten Klasse der HTTP Status Codes geht es um Client-Fehler.400, 401, 403 und 404 sind die typischen Meldungen, die hier vom Server geschickt werden. Beim 400er konnte der Server die Anfrage nicht verstehen und sendet ein Bad Request zurück.

Die 401 bedeutet, dass der Client sich nicht ordnungsgemäß authentifizieren konnte. Eine häufige Anwendung ist hier der .htacces-Passwortschutz. Nutzername und Passwort müssen dann eingegeben werden, wenn man Zugriff auf die Inhalte haben will.

Der Status Code 403 signalisiert „Forbidden„, es gibt keine Berechtigung diese Inhalte aufzurufen. In manchen Fällen sind die Verzeichnisse, die man aufrufen will, auch einfach leer. Im Falle von 404 gibt es einfach unter dieser URL keine Ressource, sie existiert nicht. Mit dem Statuscode 410 signalisieren Webseitenbetreiber den Crawlern, dass dieser Zustand von Dauer ist, die Ressource also nie wieder unter dieser URL zur Verfügung stehen wird.

  • 500, 502 und 504 sieht ein Benutzer, wenn ein Fehler beim Server vorliegt. Das kann eine Sammelmeldung für alle möglichen Fehler wie der 500er sein, aber auch die Rückmeldung 502-Bad Gateway für eine ungültige Antwort oder der häufige 504 Gateway Timeout, weil der Server innerhalb einer festgelegten Zeitspanne keine Antwort liefern konnte.

Bedeutung für die Suchmaschinenoptimierung

Für die Suchmaschinenoptimierung speilen hinsichtlich der Onpage-Optimierung die HTTP Status Codes eine bedeutende Rolle. Häufige 404-Fehler deuten auf schlechte gepflegte Webseiten hin und führen zu hohen Absprungraten. Verschieben sich Inhalte auf andere URLs sollten SEO also immer mit einer Weiterleitung, am besten mit 301-Redirects arbeiten. Noch schlimmer sind softe 404-Fehler, die gar keinen HTTP Status Code 404 oder 410 erzeugen, weil der Webmaster keine Fehlerseite angelegt hat, die angezeigt werden könnte. Dadurch, dass dann einfach 200 Ok oder 302 ausgegeben wird, kann es sein, dass Benutzer auf Seiten treffen, die Content anzeigen, die gar nicht zur Anfrage passen. Das ist für die User Experience und den wiederkehrenden Traffic natürlich fatal.

Viele 500er-Fehler sind ein Hinweis darauf, dass es Probleme beim Server gibt, die man mit seinem Hoster besprechen sollte.