HTTP 301 Weiterleitungen über .htaccess einrichten
In diesem Hilfecenter-Artikel erfahren Sie, wie Sie mithilfe der Apache2 mod_rewrite Erweiterung und der .htaccess Datei HTTP 301 Weiterleitungen für Ihren Server einrichten können.
Allgemeine Einrichtung
Für die Einrichtung von mod_rewrite Regeln ist eine .htaccess Datei in Ihrem Document-Root (Stammverzeichnis) notwendig. Sofern noch keine Datei angelegt wurde, erstellen Sie bitte eine .htaccess Datei mit folgendem Inhalt:
RewriteEngine OnTipp: Strukturieren Sie Ihre mod_rewrite Regeln, damit mehrfache 301-Weiterleitungen vermieden werden.
Beispiel: Anstelle von http://domain.de → https://domain.de → https://ww.domain.de, sollte umgehend von http://domain.de zu https://ww.domain.de weitergeleitet werden.
Weiterleitung einzelner URLs
Um spezifische URLs weiterzuleiten, verwenden Sie bitte folgendes Schema:
Redirect 301 /alte-produkt-detailseite/ https://www.domain.de/neue-podukt-detailseite/Beispiel: www.domain.de/alte-produkt-detailseite/ 301 → www.domain.de/neue-produkt-detailseite/
Weiterleitung einzelner Verzeichnisse
Um ganze Verzeichnisse inklusive der vorhandenen Unterverzeichnisse weiterzuleiten, verwenden Sie bitte folgende Regel:
RewriteRule ^alte-produkt-kategorie/(.*)$ /neue-produkt-kategorie/$1 [R=301,NC,L]Weiterleitung auf www. Subdomain
Für die Weiterleitung von allen Seiten, die nicht über die www. Subdomain aufgerufen werden, verwenden Sie bitte folgende Regel:
RewriteCond %{HTTP_HOST} ^www\.domain\.de$ [NC]
RewriteRule ^(.*)$ https://domain.de/$1 [L,R=301]Beispiel: https://domain.de/produkt-detailseite 301 → https://www.domain.de/produkt-detailseite
Weiterleitung auf https://
Für die Weiterleitung aller URLs auf https:// verwenden Sie bitte folgende Regeln:
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Beispiele:
Weiterleitung auf neue Domain
Für die Weiterleitung einer ganzen Domain verwenden Sie folgende Regel, wenn die Request URI identisch bleibt:
RewriteCond %{HTTP_HOST} !^www\.alte-domain\.de$ [NC]
RewriteRule .* https://www.neue-domain.de%{REQUEST_URI} [L,R=301]Problembehebung
Nach dem Einrichten von neuen mod_rewrite Regeln sollten diese auf alle möglichen Konstellationen geprüft werden. Hierfür eignet sich das externe Debugging-Tool https://help.creoline.com/de/tools/redirect-test. Tragen Sie hier alle Varianten der URL ein, um die verschiedenen Weiterleitungen zu prüfen.
Achtung: Aktuelle Browser nutzen einen internen Cache für 301-Weiterleitungen, der nicht automatisch durch das Leeren des Browser-Caches geleert wird.