Weiterleitung mit Statuscode 302
HTTP-Weiterleitungen (Redirects) werden immer dann benötigt, wenn eine komplette Website oder Teile davon auf eine andere URL weitergeleitet werden sollen. Dies kann etwa bei einem Domainwechsel oder bei einer Änderung der internen Verzeichnisstruktur nötig sein.
Dabei wird vom Zielserver ein Statuscode geliefert, welcher dem Client (Browser) die ordnungsgemäße Bearbeitung der Anfrage bestätigt bzw. die Art des Redirects übermittelt. Im Falle einer Weiterleitung werden hauptsächlich die Statuscodes 301 und 302 eingesetzt. Redirects mit dem HTTP Status Code 302 werden in der Regel nur verwendet, wenn die Weiterleitung zeitlich begrenzt erfolgen soll. Im Gegensatz zur 301 Weiterleitung (Moved Permanently - dauerhaft verschoben) wird hier vom Zielserver der HTTP-Statuscode 302 (Found - temporär verschoben) geliefert. Dadurch wird dem anfragenden Client mitgeteilt, dass die angefragte Seite zwar vorhanden, jedoch zeitweilig verschoben wurde.
Inhaltsverzeichnis
Der Statuscode 302 in Bezug auf die Suchmaschinenoptimierung
Bei einer 302 Weiterleitung bleibt die alte Adresse weiterhin gültig, was in Bezug auf die Suchmaschinenoptimierung (SEO) beachtet werden muss. Dabei verbleibt die ursprüngliche Adresse im Index der Suchmaschine und wird auch weiter abgefragt. Außerdem muss bedacht werden, dass hier im Unterschied zum Statuscode 301 der Google-Pagerank nicht übertragen wird, was zu einem Verlust der aktuellen Rankingposition in den Suchergebnissen führen kann.
Eine Weiterleitung mittels Statuscode 302 eignet sich daher ausschließlich für die zeitweise Anwendung. Für eine dauerhafte Weiterleitung, etwa im Falle eines Domainumzugs, sollte aus den oben genannten Gründen immer der Statuscode 301 bevorzugt werden.
Beispiele zur 302 Weiterleitung
Zur Weiterleitung mit dem Statuscode 302 stehen verschiedene Varianten zur Verfügung. Als Beispiele werden hier die serverseitigen Weiterleitungen einer kompletten Domain oder einer bestimmten Seite mittels .htaccess beschrieben. Ein Redirect mittels PHP ist ebenfalls möglich, wobei allerdings der .htaccess-Variante der Vorzug gegeben werden sollte. Clientseitige Weiterleitungen mittels Javascript oder Meta-Refresh sollten dagegen aus SEO-Sicht nicht verwendet werden.
Mittels .htaccess Redirect
Auf Apache Webservern sorgen folgende Einträge in der .htaccess für die Weiterleitung einer Domain oder bestimmten Unterseite:
Redirect 302 / http://www.neue_domain.de/
Redirect 302 /alte_seite.html http://www.domain.de/neue_seite.html
Mittels .htaccess mod_rewrite
Weiterhin besteht die Möglichkeit, einen .htaccess-Redirect mittels mod_rewrite zu realisieren. Das Apache-Modul mod_rewrite muss dazu am Server installiert sein:
RewriteEngine on RewriteRule ^(.*) http://www.neue_domain.de/$1 [R=302,L]
RewriteEngine on RewriteRule ^alte_seite.html$ http://www.domain.de/neue_seite.html [R=302,L]
Mittels PHP
Falls .htaccess nicht verwendet werden kann, sind auch Lösungen mit PHP möglich. Als Beispiel:
<?php header("HTTP/1.1 302 Found"); header("Location: http://www.neue_domain.de"); header("Connection: close"); ?>
<?php''' header("HTTP/1.1 302 Found"); header("Location: http://www.domain.de/neue_seite.php"); header("Connection: close"); ?>