Header-Bild
Image
Romson Preechawit on Unsplash

40.. was? Fehlercodes im Internet

Man kennts: kurz mal in der URL vertippt oder aber auf einen Link geklickt der zu einer kaputten Seite führt und alles was man sieht ist eine dreistellige Zahl die einem erstmal nicht viel sagt.

404 kennen wir mittlerweile alle, welche es aber noch gibt, was sie bedeuten und wie man die dahinterliegenden Probleme behebt (falls man das kann), zeige ich dir hier.

Die Basics

Zuerst einmal musst du wissen, dass es sich bei den Zahlen nicht per se um Fehler handelt, sondern um Status-Codes des HTTP-Protokolls. Jede Antwort, die mit diesem Protokoll versendet wird, hat einen solchen Code. Weil es aber ganz schön viele davon gibt, hat man sie in Kategorien eingeteilt, de (grob) das gleiche aussagen:

  • 100 - 199: Nur zur Info
  • 200 - 299: Alles okay(, aber ...)
  • 300 - 399: Weiterleitungen
  • 400 - 499: Client-Fehler (etwas stimmt mit der Anfrage nicht)
  • 500 - 599: Server-Fehler (der Server kann die Anfrage nicht verarbeiten)

Es sind hierbei allerdings nicht alle Zahlen belegt, ich werde im Folgenden also nicht 400 Codes einzeln erklären, keine Sorge. Generell gehe ich nur auf die wichtigsten ein. 

Wenn du mehr über die Status-Codes, insbesondere die, die ich hier nicht aufliste, erfahren möchtest, ist ein Blick in die MDN-Dokumentation Gold wert.

2xx - Alles supi

200 - OK

Dieser Status-Code sagt wirklich nur aus, dass alles okay ist. Mehr nicht.

201 - Created

Typischerweise (aber nicht zwangsläufig) erhältst du diesen Status-Code wenn du ein Formular ausgefüllt hast und in Folge dessen ein Datensatz erstellt wurde.

204 - No Content

Die Anfrage ging zwar erfolgreich durch, es gibt aber einfach nichts, was zurückgesendet werden kann.

3xx - Weiterleitungen

301 - Moved Permanently

Die URL hat sich dauerhaft geändert und die neue URL steht in der Adresszeile (und in den Header-Daten der Antwort).

302 - Found

Die URL hat sich nur vorübergehend geändert und wird sich in Zukunft wohlmöglich noch einmal ändern. Die aktuelle URL steht in der Adresszeile.

307 - Temporary Redirect

Dieser Code sagt im Grunde das gleiche aus wie 302, nur dass die HTTP_Methode die gleiche bleiben muss. Wurde bei der ersten Anfrage GET verwendet, muss auch bei der zweiten Anfrage GET verwendet werden.

308 - Permanent Redirect

Dieser Status-Code hat den gleichen Effekt wie 301, nur dass auch hier die HTTP-Methode die gleiche bleiben muss. Wenn also auch hier die erste Anfrage via GET gesendet wurde, muss die zweite Anfrage ebenso via GET versendet werden.

4xx - Client-Fehler

400 - Bad Request

Der Server kann oder will diese Anfrage nicht verarbeiten, da sie fehlerhaft zu sein scheint. Was genau mit der Anfrage falsch ist, ist hier aber nicht näher definiert.

401 - Unauthorized

Der Name mag zwar was anderes sagen, faktisch sagt dieser Status-Code aber nur aus, dass du nicht eingeloggt bist, bzw. deine Identität dem Server nicht bekannt ist. 

Du kannst versuchen dich einzuloggen und es noch einmal zu versuchen.

403 - Forbidden

Im Gegensatz zu 401 kennt der Server hier deine Identität (bspw. nachdem du dich eingeloggt hast), du darfst den Inhalt der Ressource aber dennoch nicht sehen. 

404 - Not Found

Die angefragte Ressource konnte nicht gefunden werden.

Es kann sein, dass Server diesen Status-Code anstelle von 403 senden um zu verschleiern, dass hinter einer URL eine Ressource versteckt ist.

405 - Method Not Allowed

Die Methode mit der die Anfrage gesendet wurde ist für diese Ressource nicht erlaubt. Eine Schnittstelle kann es zum Beispiel verbieten, dass man mittels DELETE-Request eine Ressource vom Server löscht.

410 - Gone

Dieser Status-Code wird verwendet, wenn der angefragte Inhalt dauerhaft vom Server gelöscht wurde, ohne, dass eine Weiterleitung angegeben wurde.

413 - Payload Too Large

Wenn du beispielsweise versuchst ein 3 Stunden langes Video irgendwo hochzuladen, der Server aber nur 2MB akzeptiert, kann dieser Status-Code als Antwort kommen - die Anfrage ist schlicht zu groß.

418 - I'm a teapot

Der Server steht für seine Identität ein. Wird auch mal Zeit.

5xx - Server-Fehler

500 - Internal Server Error

Der Server ist einfach nicht in der Lage deine Anfrage zu verarbeiten, das liegt aber am Server und nicht an der Anfrage.

502 - Bad Gateway

Der Server an den die Anfrage ging fungiert hier als ein Gateway welcher die Anfrage weiterleitet. Die Antwort auf die weitergeleitete Anfrage ist aber ungültig oder anderweitig fehlerhaft.

504 - Gateway Timeout

Der Server wird auch hierbei wieder als Gateway zwischengeschaltet, allerdings antwortet die Stelle an die die Anfrage weitergeleitet wird nicht.

Bildnachweis