
301 Weiterleitung
Immer wieder habe ich während meiner Arbeit mit der Frage zu tun – „Wie richte ich eine 301 Weiterleitung, das sogenannte 301-Redirect ein?“
Dazu habe ich mir einmal ein paar Gedanken gemacht, ein kleines Videotutorial erstellt und Euch die wichtigsten Code-Snippets aufgelistet. Ausserdem werde ich Euch hier zum Thema 301 redirect ein paar Beispiele einfügen, denn es kommt öfters vor das man mit diesem Thema konfrontiert wird und man immer wieder einmal den Code dazu braucht.
Die einfachste Möglichkeit und die gebräuchlichste Methode ist wohl, die 301 Weiterleitung von NON-www zu www. Aber bevor ihr Euch für eine der beiden Weiterleitungen entscheidet, solltet ihr eine eine Site-Abfrage in Google starten, um zu erfahren, mit welcher Version (NON-www oder www) Eure Webseite bei Google indexiert ist.
Abfrage bei Google nach der Anzahl Eurer indexiersten Seiten
Abfrage für NON-www
site:deinedomain.tld
Abfrage für www
site:www.deinedomain.tld
Habt ihr Euch für eine Variante entschieden, könnt Ihr damit beginnen die entsprechende 301 Weiterleitung zu erstellen.
Allerdings solltet Ihr wissen, dass die entsprechende .htaccess Datei nur auf einem Apache Server mit aktiviertem mod_rewrite funktioniert.
Wichtig für Telekom User!
Bei der Telekom ist es nicht möglich die htaccess zu bearbeiten! Solltet Ihr also Euren WordPress Blog bei der Telekom hosten wollen, lasst es, denn das funktioniert nicht. Sucht Euch unbedingt einen Provider bei dem Ihr vollen Zugriff auf die .htaccess habt!
Als erstes legt Ihr eine neue Datei mit der Bezeichnung “.htaccess” an, falls sie nicht schon standardmässig angelgt wurde. In manchen Fällen liegt diese Datei schon als htaccess.txt im Root-Verzeichnis Eures Webspaces oder auch als leere .htaccess Datei.
In der ersten Zeile wird die RewriteEngine mit der folgenden Zeile aktiviert:
RewriteEngine on
Nun ist es soweit und Ihr könnt damit beginnen die entsprechenden 301-Redirect Weiterleitungen einzutragen:
So richtet Ihr eine 301 Weiterleitung von NON-www zu www ein
RewriteCond %{HTTP_HOST} !^www. [NC] RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [L,R=301]
oder
RewriteCond %{HTTP_HOST} !^www.deinedomain.tld$ RewriteRule ^(.*)$ http://www.domainname.tld/$1 [L,R=301] 301 Weiterleitung von www zu NON- www
RewriteCond %{HTTP_HOST} ^www.deinedomain.tld$ [NC] RewriteRule ^(.*) http://deinedomain.tld/$1 [R=301,L] 301 Weiterleitung von X zu Y
Redirect 301 /beispiel.html http://www.deinedomain.tld/beispiel/
Sicher ist es Euch schon des öfteren passiert, das Eure Domain auch über die index.html bzw. index.php erreichbar ist. Entsprechend ist Eure Startseite über unterschiedliche URLs aufrufbar, wie z.B.
www.deinedomain.tld & www.deinedomain.tld/index.html oder www.deinedomain.tld/index.php
Auch diese URI´s könnt Ihr, mit Hilfe einer 301-redirect Funktion via .htaccess Datei, zur Hauptdomain umleiten.
Hier findet Ihr die 301 Weiterleitung der index.html oder index.php zu Eurer Hauptdomain
Für die index.html oder index.php gilt dann folgendes:
RewriteCond %{THE_REQUEST} ^[A-Z]+ /index.html RewriteRule ^index.html/?(.*) /$1? [L,R=301]
RewriteCond %{THE_REQUEST} ^[A-Z]+ /index.php RewriteRule ^index.php/?(.*) /$1? [L,R=301]
301 Weiterleitung von Duplicate Content (DC) Domains zu Eurer Haupt-Domain & NON-www zu www
RewriteCond %{HTTP_HOST} !^www.deinedomain.tld$ RewriteCond %{HTTP_HOST} !^www.deinedomain1.tld$ RewriteCond %{HTTP_HOST} !^www.deinedomain2.tld$ RewriteRule ^(.*)$ http://www.deinedomain.tld/$1 [L,R=301]
RewriteCond %{HTTP_HOST} ^www.deinedomain1.tld$ [NC] RewriteRule ^(.*)$ http://www.deinedomain.tld/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www.deinedomain2.tld$ [NC] RewriteRule ^(.*)$ http://www.deinedomain.tld/$1 [R=301,L]
Weitere Möglichkeiten einer 301 Weiterleitung via PHP und Query
Wer noch etwas tiefer in die Materie einsteigen will und eine spezielle Möglichkeit sucht wie man eine 301-Weiterleitungen via PHP einrichtet, wird hier fündig.
Neueste Kommentare