Es exis­tie­ren ver­schie­de­ne Optionen, eine Domain oder Subdomain auf einen be­lie­bi­gen anderen Bereich der eigenen Web­prä­senz oder eine externe Adresse um­zu­lei­ten. Gängig sind Domain-Wei­ter­lei­tun­gen, auch Redirects oder URL-Wei­ter­lei­tun­gen genannt, via .htaccess, PHP-Script, HTML-Meta-Tag und Ja­va­Script.

Domain-Wei­ter­lei­tung im Web­sei­ten­be­trieb

Grund­sätz­lich dienen Redirects dazu, Servern mit­zu­tei­len, dass Web­sei­ten­in­hal­te von einer URL auf eine andere umgezogen sind. Dies ist vor allem dann es­sen­zi­ell, wenn die ur­sprüng­li­che Web­adres­se Ziel eines ein­ge­hen­den Links ist, als Le­se­zei­chen auf dem Rechner eines Users ge­spei­chert wurde oder sich bereits prominent in der Such­ma­schi­ne plat­zie­ren konnte. In diesem Fall über­mit­telt die Wei­ter­lei­tung einem Browser oder Web­craw­ler, dass der gesuchte Inhalt ver­scho­ben wurde, und verweist auf die neue Adresse. An­dern­falls würden Web­sei­ten­be­su­che­rin­nen und -besucher statt der an­ge­for­der­ten Webpage lediglich eine 404-Feh­ler­sei­te angezeigt bekommen.

Vor allem bei kom­mer­zi­el­len Web­pro­jek­ten möchte man dies natürlich ver­hin­dern. Ins­be­son­de­re On­line­shops bieten ein stetig wech­seln­des Pro­dukt­sor­ti­ment, das sich in einer Vielzahl einzelner Webpages wi­der­spie­gelt. Ist ein Artikel nicht mehr verfügbar, werden po­ten­zi­el­le Kundinnen und Kunden einfach auf eine Webpage mit ähnlichen Produkten wei­ter­ge­lei­tet. So lassen sich Be­su­cher­strö­me effizient lenken und Absprünge mi­ni­mie­ren.

Wenn Sie eine Domain-Wei­ter­lei­tung ein­rich­ten, können Sie ein und denselben Inhalt außerdem unter ver­schie­de­nen Web­adres­sen zu­gäng­lich zu machen. Sämtliche Al­ter­na­tiv­adres­sen werden dabei einfach auf die prio­ri­sier­te Domain der Website um­ge­lei­tet. Eine solche All-inclusive-Domain-Wei­ter­lei­tung ist un­ab­hän­gig von der spe­zi­fi­schen URL bzw. von dem Pfad, den Nut­ze­rin­nen und Nutzern eingeben.

Domain kaufen
Re­gis­trie­ren Sie Ihre perfekte Domain
  • Inklusive 1 SSL-Wildcard-Zer­ti­fi­kat pro Vertrag
  • Inklusive Domain Lock
  • Inklusive Domain Connect für einfache DNS-Ein­rich­tung

Domain-Wei­ter­lei­tungs­ar­ten

Grund­sätz­lich un­ter­schei­det man zwischen ser­ver­sei­ti­gen und client­ba­sier­ten Wei­ter­lei­tun­gen. Während bei der ser­ver­sei­ti­gen Domain-Wei­ter­lei­tung ein ent­spre­chen­der HTTP-Status-Code an den User-Agent (Browser oder Web­craw­ler) über­mit­telt wird, erfolgen client­ba­sier­te Wei­ter­lei­tun­gen ohne eine solche Rück­mel­dung. Letztere werden daher nicht von allen User-Agents un­ter­stützt. Unter Umständen bleiben Besucher somit auf der ur­sprüng­lich auf­ge­ru­fe­nen Seite und werden nicht zum neuen Ziel wei­ter­ge­lei­tet. Die ser­ver­sei­ti­ge Rea­li­sa­ti­on ist daher in der Regel vor­zu­zie­hen. Client­ba­sier­te Lösungen bieten sich nur an, wenn eine ser­ver­sei­ti­ge Domain-Wei­ter­lei­tung aufgrund tech­ni­scher Ein­schrän­kun­gen nicht umgesetzt werden kann.

Eine weitere Form des Redirects ist die Domain-Wei­ter­lei­tung ohne URL-Änderung, die häufig auch als trans­pa­ren­te oder un­sicht­ba­re Wei­ter­lei­tung be­zeich­net wird. Bei einer solchen Domain-Wei­ter­lei­tung mit Mas­kie­rung wird die für den User an­ge­zeig­te URL nicht geändert, obwohl der Client auf eine andere Domain wei­ter­ge­lei­tet wurde und der Inhalt einer anderen Webpage dar­ge­stellt wird. Da es bei dieser Art der Wei­ter­lei­tung jedoch Schwie­rig­kei­ten mit der In­di­zie­rung sowie der URL-Dar­stel­lung im Browser geben kann, ist sie nicht un­ein­ge­schränkt zu empfehlen.

Tipp

Sie wollen eine Domain-Wei­ter­lei­tung ein­rich­ten? Im folgenden Beitrag im IONOS Hilfe-Center erfahren Sie Schritt für Schritt, wie Sie Ihre Domain auf eine andere Domain wei­ter­lei­ten!

Ser­ver­sei­ti­ge Wei­ter­lei­tung

In den meisten Fällen erfolgt die ser­ver­sei­ti­ge Domain-Wei­ter­lei­tung über die Kon­fi­gu­ra­ti­ons­da­tei .htaccess oder über ein PHP-Script. Der Vorteil dieser beiden Methoden ist, dass man in­di­vi­du­ell de­fi­nie­ren kann, welcher HTTP-Status-Code an den User-Agent aus­ge­ge­ben werden soll. Dies er­mög­licht Web­sei­ten­be­trei­bern, Domain-Wei­ter­lei­tun­gen als permanent oder temporär zu kenn­zeich­nen. Relevant sind in diesem Zu­sam­men­hang vor allem die HTTP-Status-Codes 301 und 302:

  • 301 – Moved Per­ma­nent­ly: Die vom User-Agent an­ge­for­der­te Ressource ist dauerhaft unter der in der Umleitung genannten URL verfügbar. Die alte URL ist fortan ungültig. Hier ist eine 301-Wei­ter­lei­tung vonnöten.
  • 302 – Moved Tem­po­r­a­ri­ly: Die vom User-Agent an­ge­for­der­te Ressource ist vor­über­ge­hend unter der in der Umleitung genannten URL verfügbar. Im Gegensatz zum 301-Code bleibt die ur­sprüng­li­che URL trotz Wei­ter­lei­tung gültig.

Wird der HTTP-Status-Code nicht explizit definiert, über­mit­telt ein Webserver bei einer ser­ver­sei­ti­gen Wei­ter­lei­tung stan­dard­mä­ßig den Status-Code 302. Dies ist nicht immer gewollt. Es empfiehlt sich daher, bei jeder Wei­ter­lei­tung den ge­wünsch­ten Status-Code manuell ein­zu­tra­gen, um In­de­xie­rungs­feh­ler wie das URL-Hijacking zu vermeiden. Anders als die 301-Wei­ter­lei­tung ver­mit­telt der Status-Code 302 einem Web­craw­ler, dass die ur­sprüng­li­che URL weiterhin indexiert bleiben soll. Beim dau­er­haf­ten Betrieb kon­kur­riert die Wei­ter­lei­tungs­adres­se mit dem Wei­ter­lei­tungs­ziel im Such­ma­schi­nen­in­dex.

.htaccess-Umleitung

Bei .htaccess handelt es sich um eine Kon­fi­gu­ra­ti­ons­da­tei für den Apache-Webserver, mit der sich die zentrale Kon­fi­gu­ra­ti­on auf Ver­zeich­nis­ebe­ne über­schrei­ben lässt. Diese Datei er­mög­licht es Web­sei­ten­be­trei­bern, ver­zeich­nis­spe­zi­fi­sche Ein­stel­lun­gen für eine Domain und deren Un­ter­ver­zeich­nis­se vor­zu­neh­men. Eine Funktion der .htaccess-Datei ist die ser­ver­sei­ti­ge Domain-Wei­ter­lei­tung einzelner zu einem Web­pro­jekt ge­hö­ren­der Adressen auf andere URLs.

Mithilfe von Code in der .htaccess-Datei kann man Domain-Wei­ter­lei­tun­gen ein­rich­ten. Legt man eine .htaccess-Datei mit folgendem Code im Haupt­ver­zeich­nis an, werden Anfragen an die ur­sprüng­li­che Domain ser­ver­sei­tig zur Domain www.beispiel.de um­ge­lei­tet:

Redirect 301 / http://www.beispiel.de/
apach­econf

Die Codezeile beginnt mit Redirect 301 und legt damit den vom Server zu über­mit­teln­den HTTP-Status-Code fest. Darauf folgt der Pfad zu den Inhalten, die wei­ter­ge­lei­tet werden sollen. In diesem Fall alle, wie der Schräg­strich festlegt. Den Abschluss bildet die voll­stän­di­ge Adresse der Ziel-URL, auf die der User-Agent um­ge­lei­tet werden soll: http://www.beispiel.de.

Mit dieser Methode lassen sich auch einzelne Dateien umleiten. Folgender Code zeigt eine .htaccess-Wei­ter­lei­tung von einer auf andere Domain:

Redirect 301 /verzeichnis/beispiel-dokument.html http://www.beispiel.de/beispiel.html
apach­econf

Nach dem HTTP-Status-Code 301 wird der Ver­zeich­nis­pfad der Datei genannt, die permanent um­ge­lei­tet werden soll (/verzeichnis/beispiel-dokument.html), sowie die Adresse des Wei­ter­lei­tungs­ziels (http://www.beispiel.de/beispiel.html).

Auf einem Apache-Server mit aktivem mod_rewrite-Modul sähe die per­ma­nen­te Wei­ter­lei­tung einer bei­spiel­haf­ten Webpage auf eine andere URL fol­gen­der­ma­ßen aus:

RewriteEngine On
RewriteRule ^verzeichnis/beispiel-dokument.html$ http://www.beispiel.de/beispiel.html [L,R=301]
apach­econf

In Codezeile 01 wird das mod_rewrite-Modul des Apache-Web­ser­vers mit dem Befehl RewriteEngine On aktiviert. Dann folgt eine RewriteRule mit dem Pfad der Wei­ter­lei­tungs­da­tei sowie der Ziel­adres­se. Caret und Dol­lar­zei­chen markieren Anfang und Ende des Pfads, L be­zeich­net die letzte mod_rewrite-Regel für passende Anfragen. R=301 leitet mit HTTP-Status 301 weiter.

Tipp

In einem weiteren Artikel haben wir für Sie einige .htaccess-Tricks zu­sam­men­ge­stellt.

An anderer Stelle erfahren Sie mehr über Rewrite-Engines.

Bei der Kon­fi­gu­ra­ti­on einer Domain-Wei­ter­lei­tung via .htaccess ist zu beachten, dass feh­ler­haf­te Eingaben in der Kon­fi­gu­ra­ti­ons­da­tei gra­vie­ren­de Aus­wir­kun­gen auf den Web­sei­ten­be­trieb haben. Da Än­de­run­gen direkt nach der Spei­che­rung der .htaccess-Datei in Kraft treten, sollten ent­spre­chen­de Kon­fi­gu­ra­tio­nen in jedem Fall gründlich getestet werden.

PHP-Wei­ter­lei­tung

Eine Domain-Wei­ter­lei­tung kann nicht nur durch die Kon­fi­gu­ra­ti­on via .htaccess erfolgen, sondern auch durch einen ent­spre­chen­den Befehl in einem PHP-Script (z. B. in der index.php). Folgender Code zeigt eine per­ma­nen­te Wei­ter­lei­tung auf die fiktive Ziel-URL www.beispiel.de.

<?php
header("Status: 301 Moved Permanently");
header("Location: http://www.beispiel.de");
exit;
?>
php

Bei der Wei­ter­lei­tung via PHP-Script wird der be­ab­sich­tig­te HTTP-Sta­tus­code durch die header-Funktion in Codezeile 02 definiert. In diesem Beispiel soll eine per­ma­nen­te 301-Wei­ter­lei­tung umgesetzt werden. Da ser­ver­sei­ti­ge Wei­ter­lei­tun­gen stan­dard­mä­ßig temporär aus­ge­führt werden, muss man die per­ma­nen­te Umleitung via Status-Code 301 explizit erzwingen. Die Ziel­adres­se der Domain-Wei­ter­lei­tung wird in Codezeile 03 ebenfalls mit header hin­ter­legt. Die Wei­ter­lei­tung im Beispiel erfolgt auf die Web­adres­se http://www.beispiel.de. Die exit-Funktion in Codezeile 04 beendet das Script und ver­hin­dert, dass ein nach­fol­gen­der Code aus­ge­führt wird. Damit die Wei­ter­lei­tung via PHP-Script funk­tio­niert, muss der Code-Block am Anfang stehen, bevor der Server even­tu­el­le HTML-Inhalte auf der Wei­ter­lei­tungs­sei­te aus­lie­fert.

Domain-Check

Client­ba­sier­te Wei­ter­lei­tun­gen

Ist die ser­ver­sei­ti­ge Umsetzung einer Domain-Wei­ter­lei­tung aus tech­ni­schen Gründen nicht möglich, können Web­sei­ten­be­trei­ber auf eine client­ba­sier­te Lösung zu­rück­grei­fen. Dazu stehen das HTML-Meta-Tag refresh sowie ein ent­spre­chen­des Ja­va­Script zur Verfügung. Der Nachteil einer client­ba­sier­ten Wei­ter­lei­tung ist, dass der Server keinen HTTP-Status-Code an den an­fra­gen­den Browser oder Web­craw­ler aus­lie­fert. Dieser wird also nicht explizit auf die Wei­ter­lei­tung hin­ge­wie­sen. Des Weiteren werden client­ba­sier­te Wei­ter­lei­tun­gen nicht von allen User-Agents un­ter­stützt, weswegen die Gefahr besteht, dass einige Sei­ten­be­su­cher nicht um­ge­lei­tet werden.

Nach­tei­lig wirken sich client­ba­sier­te Wei­ter­lei­tun­gen auch auf die In­de­xie­rung durch Such­ma­schi­nen aus. Ein ex­pli­zier­ter Aus­schluss von der In­de­xie­rung durch den ent­spre­chen­den HTTP-Status-Code 301 erfolgt bei client­ba­sier­ten Wei­ter­lei­tun­gen nicht. Daher kann es beim Such­ma­schi­nen­ran­king dazu kommen, dass die Wei­ter­lei­tungs­do­main in Kon­kur­renz zur Ziel­do­main tritt. Im Gegensatz zu ser­ver­sei­ti­gen Wei­ter­lei­tun­gen, die für die Nutzenden abgesehen vom Adress­wech­sel in der Brow­ser­zei­le nahezu un­sicht­bar bleiben, gehen client­ba­sier­te Wei­ter­lei­tun­gen immer mit einer Ver­zö­ge­rung einher, die dem Nutzenden durchaus auffallen kann.

Wei­ter­lei­tung via HTML-Meta-Refresh

Die HTML-Meta-Wei­ter­lei­tung wird durch Meta-Tags mit dem Attribut http-equiv umgesetzt. Dazu müssen Sie lediglich eine einfache HTML-Datei mit dem passenden Tag im Header zur Wei­ter­lei­tung erstellen. Um die Be­su­che­rin­nen und Besucher Ihrer Website auf die Umleitung hin­zu­wei­sen, sollte ein ent­spre­chen­der Hin­weis­text im HTML-Dokument angelegt werden. Gängig sind Einzeiler wie „Sie werden in wenigen Sekunden wei­ter­ge­lei­tet“. Eine einfache Domain-Wei­ter­lei­tung via HTML-Meta-Refresh auf eine fiktive Bei­spiel­adres­se zeigt der folgende Code:

Durch das Meta-Tag http-equiv="refresh" wird der Cli­ent­da­zu auf­ge­for­dert, die Domain wei­ter­zu­lei­ten. Wie dies Wei­ter­lei­tung erfolgt und wie lange die Domain-Wei­ter­lei­tung dauert, lässt sich im Content-Attribut de­fi­nie­ren. Im Beispiel ist eine Wei­ter­lei­tung nach zehn Sekunden auf die Ziel­do­main www.beispiel.de vor­ge­se­hen.

<meta http-equiv="refresh" content="10; url=http://www.beispiel.de/">
html

Ja­va­Script-Wei­ter­lei­tung

Eine einfache Mög­lich­keit der client­ba­sier­ten Domain-Wei­ter­lei­tung bietet Ja­va­Script. Doch ähnlich wie beim Meta-Tag refresh sollten Sie Ja­va­Script-Wei­ter­lei­tun­gen nur im Ein­zel­fall verwenden, da die Skript­spra­che aus Si­cher­heits­grün­den eventuell nicht von jedem Web­brow­ser un­ter­stützt wird. Probleme bereiten Ja­va­Script-Wei­ter­lei­tun­gen zudem für Web­craw­ler und Nutzer mit aktiven NoScript-Addons. Eine klas­si­sche Domain-Wei­ter­lei­tung via Ja­va­Script zeigt der folgende Code:

<script> 
window.location.replace('http://www.beispiel.de'); 
</script>
html

Von Bedeutung ist hier vor allem die Codezeile 02. Im Bei­spiel­code wird das Objekt window.location genutzt, um auf die aktuelle Web­sei­ten­adres­se zu verweisen. Der Befehl replace weist den Browser an, den Nutzenden auf die in Klammern de­fi­nier­te Ziel­do­main www.beispiel.de wei­ter­zu­lei­ten.

Zum Hauptmenü