Das Internet fasst weit mehr als 1 Milliarde Webseiten. Will ein Nutzer eine spezielle In­ter­net­prä­senz wie die Homepage seines Lieb­lings­ver­eins, die Start­sei­te der Hausbank oder das Postfach beim Mail-Anbieter in seinem Web­brow­ser aufrufen, braucht er dafür eine In­ter­net­adres­se. Diese lo­ka­li­siert das ge­wünsch­te Web­an­ge­bot auf dem ent­spre­chen­den Server im Netz. Die Über­tra­gung der an­ge­for­der­ten Daten auf den lokalen Rechner erfolgt mithilfe des Hypertext-Über­tra­gungs­pro­to­kolls HTTP. Dazu startet der Web­brow­ser (in diesem Fall Client genannt) eine Anfrage beim Webserver, der diese wiederum mit einem HTTP-Status-Code in Form einer drei­stel­li­gen Zah­len­fol­ge be­ant­wor­tet. Durch diese Meldung teilt der Webserver dem Browser mit, ob eine Anfrage er­folg­reich be­ar­bei­tet wurde, ein Fehler vorliegt oder eine Au­then­ti­fi­zie­rung er­for­der­lich ist. Der HTTP-Status-Code ist somit ein es­sen­zi­el­ler Teil der vom Webserver über­mit­tel­ten Rück­mel­dung. Er wird vom Server au­to­ma­tisch in den Header einer jeden HTTP-Antwort eingefügt. Ein In­ter­net­nut­zer bekommt HTTP-Status-Codes nor­ma­ler­wei­se nur dann in Form einer au­to­ma­tisch ge­ne­rier­ten HTML-Seite angezeigt, wenn der Webserver die Anfrage des Clients nicht ausführen konnte oder durfte und dem­entspre­chend keine Web­sei­ten­da­ten über­mit­telt werden. 

HTTP-Status-Klassen

HTTP-Status-Codes werden grund­sätz­lich in fünf ver­schie­de­ne Klassen ein­ge­teilt. Wobei die erste Ziffer des drei­stel­li­gen Codes die Klas­sen­zu­ge­hö­rig­keit anzeigt. Der HTTP-Status-Code 200 gehört somit der Klasse 2xx an. Der 404-Code der Klasse 4xx. Diese Ein­tei­lung erfolgt auf Grundlage der Bedeutung und Funktion der Sta­tus­codes. Man un­ter­schei­det zwischen folgenden Klassen:

  • Klasse 1xx – In­for­ma­tiv: Wird ein HTTP-Status-Code der Klasse 1xx über­mit­telt, meldet der Server dem Client, dass die aktuelle Anfrage noch andauert. Diese Klasse fasst Codes zusammen, die In­for­ma­tio­nen zur Be­ar­bei­tung liefern und während der Anfrage gesendet werden.
  • Klasse 2xx – Erfolg: Ein 2xx-Code meldet eine er­folg­rei­che Operation. Wird ein 2xx-Code über­mit­telt, wurde die Anfrage des Clients vom Server empfangen, ver­stan­den und ak­zep­tiert. Dem­entspre­chend werden 2xx-Codes vom Server oft gleich­zei­tig mit den ge­wünsch­ten Webseiten-Daten versendet. Der Nutzer nimmt in der Regel nur die an­ge­for­der­te Webseite wahr.
  • Klasse 3xx – Umleitung: Ein 3xx-Code zeigt an, dass die Anfrage vom Server empfangen wurde. Um eine er­folg­rei­che Be­ar­bei­tung si­cher­zu­stel­len, sind jedoch weitere Schritte seitens des Clients er­for­der­lich. 3xx-Codes treten vor allem bei Um- und Wei­ter­lei­tun­gen auf.
  • Klasse 4xx – Client-Fehler: Wird ein 4xx-Code aus­ge­spielt, liegt ein Client-Fehler vor. Der Server hat die Anfrage erhalten, kann diese jedoch nicht ausführen. Der Grund dafür ist in der Regel eine feh­ler­haf­te Anfrage. In­ter­net­nut­zer werden auf diesen Fehler in der Regel durch eine au­to­ma­tisch erzeugte HTML-Seite hin­ge­wie­sen.
  • Klasse 5xx – Server-Fehler: Mit einem 5xx-Code weist der Server auf einen Fehler hin, der im Ver­ant­wor­tungs­be­reich des Servers zu verorten ist. Solche Server-Feh­ler­codes melden, dass die ent­spre­chen­de Anfrage vor­über­ge­hend nicht aus­führ­bar oder gar unmöglich ist. Auch hier wird in der Regel eine HTML-Feh­ler­sei­te erzeugt.

Wichtige HTTP-Status-Codes im Überblick

HTTP-Status-Codes spielen für Web­sei­ten­be­trei­ber oder SEO-Spe­zia­lis­ten eine wichtige Rolle. Sichtbar für einen Website-Besucher sind vor allem Client-Feh­ler­codes wie der 404 (Not Found) oder Ser­ver­feh­ler wie der 503 (Service Un­available), da diese oft als au­to­ma­tisch ge­ne­rier­te HTML-Seite im Web­brow­ser angezeigt werden. Darüber hinaus gibt es viele HTTP-Status-Codes, die nicht auf den ersten Blick sichtbar sind und von Ad­mi­nis­tra­to­ren nur durch spezielle Tools und Brow­ser­er­wei­te­run­gen überwacht werden können. Fehler fest­zu­stel­len und zu beheben ist sinnvoll, um das Nut­zer­er­leb­nis auf der Webseite und das Such­ma­schi­nen­ran­king zu op­ti­mie­ren. Folgende Übersicht zeigt eine Auswahl der ge­läu­figs­ten Ant­wort­codes. Eine voll­stän­di­ge Liste finden In­ter­es­sier­te bei­spiels­wei­se im Wiki von selfhtml.

  • Status-Code 200 – OK: Der HTTP-Status-Code 200 zeigt an, dass die Anfrage er­folg­reich be­ar­bei­tet wurde. Alle an­ge­for­der­ten Daten wurden auf dem Webserver lo­ka­li­siert und werden an den Client über­tra­gen. In­ter­net­nut­zer bekommen diesen Code nor­ma­ler­wei­se nicht zu Gesicht.
  • Status-Code 301 – Moved Per­ma­nent­ly: Der Code 301 bedeutet, dass die vom Client an­ge­for­der­ten Daten nicht mehr unter der auf­ge­ru­fe­nen In­ter­net­adres­se zu finden sind, sondern permanent ver­scho­ben wurden. Da der aktuelle Ort der an­ge­frag­ten Inhalte in der Sta­tus­mel­dung mit­ge­lie­fert wird, kann der Web­brow­ser gleich die neue Adresse anfordern. Der Nutzer wird somit wei­ter­ge­lei­tet. Die alte Adresse ist nicht länger gültig. Auch der 301 bleibt für den In­ter­net­nut­zer nahezu unbemerkt, da sich lediglich die URL in der Adress­leis­te ändert.
  • Status-Code 302 – Moved Tem­po­r­a­ri­ly: Anders als der 301, der auf einen per­ma­nen­ten Umzug verweist, meldet der 302, dass die an­ge­for­der­ten Daten temporär unter einer anderen Adresse zu finden sind. Auch beim 302 wird der Verbleib der In­for­ma­tio­nen in der Sta­tus­mel­dung angegeben, sodass eine au­to­ma­ti­sche Wei­ter­lei­tung erfolgt. Die alte Adresse bleibt jedoch gültig.
  • Status-Code 403 – Forbidden: Der HTTP-Status-Code 403 si­gna­li­siert dem Client, dass die an­ge­for­der­ten Daten zu­gangs­ge­schützt sind und die Anfrage aufgrund einer fehlenden Be­rech­ti­gung des Clients nicht durch­ge­führt werden kann. Dem In­ter­net­nut­zer wird dieses Zu­griffs­pro­blem in der Regel durch eine au­to­ma­tisch ge­ne­rier­te HTML-Seite angezeigt.
  • Status-Code 404 – Not Found: Wird die Ser­ver­ant­wort 404 ausgeben, wurden die an­ge­for­der­ten Web­sei­ten­da­ten auf dem Server nicht gefunden. In der Regel existiert die Web­adres­se nicht mehr oder die Inhalte wurden ohne Angabe der neuen Adresse ver­scho­ben. In­ter­net­nut­zer, die einen 404 angezeigt bekommen, sollten prüfen, ob die In­ter­net­adres­se korrekt in die Adress­zei­le ein­ge­ge­ben wurde. Links, die auf solche nicht mehr exis­tie­ren­den Seiten verweisen, werden als „tote Links“ be­zeich­net.
  • Status-Code 500 – Internal Server Error: Die Ser­ver­ant­wort 500 fungiert als Sammel-Sta­tus­code für un­er­war­te­te Ser­ver­feh­ler. Tritt ser­ver­sei­tig ein Fehler auf, der einen Abruf der an­ge­frag­ten Daten ver­hin­dert, wird dieser HTTP-Status-Code au­to­ma­tisch aus­ge­ge­ben. Neben der Antwort an den Client erzeugt der Webserver in der Regel in internes Feh­ler­pro­to­koll. Dieses sollte von Webseiten-Be­trei­bern ana­ly­siert werden, um Re­pa­ra­tu­ren an der Ser­ver­soft­ware vornehmen zu können.
  • Status-Code 503 ­– Service Un­available: Wird dem Nutzer ein 503-Code angezeigt, bedeutet dies, dass der ent­spre­chen­de Webserver, der die an­ge­frag­ten In­for­ma­tio­nen liefern soll, über­las­tet ist. Ge­le­gent­lich enthält diese Ser­ver­ant­wort zudem In­for­ma­tio­nen darüber, wann die Anfrage frü­hes­tens wieder be­ar­bei­tet werden kann. In der Regel können In­ter­net­nut­zer davon ausgehen, dass ein Ad­mi­nis­tra­tor an dem Problem arbeitet und der Server zu einem späteren Zeitpunkt wieder zur Verfügung steht. 

Weitere wichtige HTTP-Sta­tus­codes sind:

Wie gehen Web­sei­ten­be­trei­ber mit HTTP-Status-Codes um?

Um Web­sei­ten­be­su­chern ein optimales Nut­zer­er­leb­nis zu bieten, sollten Ad­mi­nis­tra­to­ren daran arbeiten, au­to­ma­tisch erzeugte HTML-Feh­ler­sei­ten auf ein Minimum zu be­schrän­ken. Dies gilt ins­be­son­de­re für große Web­prä­sen­zen wie Online-Shops oder News­por­ta­le, deren Sortiment oder In­for­ma­ti­ons­an­ge­bot stark fluk­tu­iert. Ver­schwin­den Webseiten, bekommt ein Besucher, der auf diese Inhalte zugreifen möchte, in der Regel den Status-Code 404 (Not Found) angezeigt. Für viele Nutzer ist dies ein Grund, ab­zu­sprin­gen und die ge­wünsch­ten In­for­ma­tio­nen oder Produkte an einer anderen Stelle im Netz, womöglich bei Wett­be­wer­bern zu suchen. Es ist somit im Interesse des Web­sei­ten­be­trei­bers, Maßnahmen zu ergreifen, den Besucher auf der Seite zu halten. Ent­spre­chend intensiv sind die Be­mü­hun­gen von Ad­mi­nis­tra­to­ren, 404-Fehler auf der Webseite zu iden­ti­fi­zie­ren. Dazu bieten sich bei­spiels­wei­se die Webmaster-Tools von Google an, mit denen sich Crawling-Fehler-Sta­tis­ti­ken erzeugen lassen. Elegant umgehen lässt sich der HTTP-Sta­tus­code 404 durch Wei­ter­lei­tun­gen an ent­spre­chen­der Stelle. Zudem kann die Ab­bruch­quo­te der Sei­ten­be­su­cher durch manuell ge­stal­te­te Feh­ler­sei­ten deutlich gesenkt werden.

404-Feh­ler­sei­ten per 301-Code auf al­ter­na­ti­ve Angebote umleiten

Wurde ein 404-Fehler aufgrund einer ge­lösch­ten Seite iden­ti­fi­ziert, empfiehlt sich die Wei­ter­lei­tung via Status-Code 301 (Moved Per­ma­nent­ly) auf ver­gleich­ba­re Inhalte. Der Sei­ten­be­su­cher findet so zwar nicht das Produkt oder In­for­ma­ti­ons­an­ge­bot, das er angefragt hat, wird durch die Be­reit­stel­lung al­ter­na­ti­ver Inhalte jedoch animiert, auf der Webseite zu verweilen. Wichtig ist hier, dass die al­ter­na­ti­ve Adresse im Bezug zur ur­sprüng­li­chen Anfrage steht und dem Besucher einen Mehrwert bietet. Theo­re­tisch lassen sich 404-Seiten auch au­to­ma­tisch per 301 umleiten – bei­spiels­wei­se auf die Start­sei­te. Wer passende Ziel­sei­ten für die Umleitung manuell aussucht, wird Besucher jedoch ef­fek­ti­ver vom Absprung abhalten. 

Al­ter­na­ti­ve Feh­ler­sei­ten ver­bes­sern die User-Ex­pe­ri­ence

Da sich 404-Fehler auch bei einer guten Web­sei­ten­pfle­ge nicht immer ver­hin­dern lassen, empfiehlt es sich, statt der vom Server au­to­ma­tisch ge­ne­rier­ten HTML-Feh­ler­sei­te manuell ge­stal­te­te Meldungen ein­zu­bin­den. Möglich macht das die Kon­fi­gu­ra­ti­ons­da­tei .htaccess. Al­ter­na­ti­ve 404-Meldungen sind in der Regel an das Design der Webseite angepasst und bieten neben dem Sta­tus­code oft weitere In­for­ma­tio­nen, etwa ver­gleich­ba­re Pro­dukt­sei­ten oder einen Überblick über das aktuelle In­for­ma­ti­ons­an­ge­bot. Wie Web­sei­ten­be­trei­ber al­ter­na­ti­ve Feh­ler­sei­ten einbinden, wird im Artikel Zehn .htaccess-Tricks, die jeder kennen sollte aus­führ­lich erklärt.

Die Bedeutung von HTTP-Status-Codes für die Such­ma­schi­nen­op­ti­mie­rung

Einigen HTTP-Status-Codes kommt auch bei der Such­ma­schi­nen­op­ti­mie­rung eine große Bedeutung zu. So teilt bei­spiels­wei­se der Code 404 nicht nur dem Web­brow­ser eines In­ter­net­nut­zers mit, dass die an­ge­for­der­te Seite nicht gefunden wurde – auch Such­ma­schi­nen können den Inhalt nicht crawlen. Genau wie mensch­li­che Web­sei­ten­be­su­cher lassen sich jedoch auch Such­ma­schi­nen-Bots per Umleitung auf die Inhalte eines neuen Ziels verweisen. Aus Gründen der Such­ma­schi­nen­op­ti­mie­rung bietet sich hier ebenfalls der Status-Code 301 an, da diesem bei der Auf­recht­erhal­tung der Link­stär­ke eine große Bedeutung zukommt. Findet der Crawler einer Such­ma­schi­ne bei einer Anfrage einer Web­adres­se den Status-Code 301 vor, wird die als ungültig aus­ge­wie­se­ne alte Adresse aus dem Suchindex gelöscht und das Ziel der Wei­ter­lei­tung neu auf­ge­nom­men.

Die Link­stär­ke der alten Seite geht dabei nicht verloren, sondern wird auf das 301-Um­lei­tungs­ziel über­tra­gen. Relevant ist das vor allem dann, wenn die alte Seite das Ziel ein­ge­hen­der Links war und die dadurch erworbene Autorität und Stärke dauerhaft auf das Wei­ter­lei­tungs­ziel über­tra­gen werden soll. Anders hingegen verhält es sich mit dem Status-Code 302. Da dieser nur eine temporäre Wei­ter­lei­tung anzeigt, bleibt die alte Adresse im Index erhalten. Die Linkpower etwaiger Backlinks wird in diesem Fall nicht an das Wei­ter­lei­tungs­ziel wei­ter­ge­ge­ben. 

Zum Hauptmenü