Blog

.htaccess Redirects einrichten – 301 Weiterleitungen in der Praxis

.htaccess Weiterleitungen

Im Bereich der Suchmaschinenoptimierung fällt oft das Wort Weiterleitung bzw. Redirect. Im Prinzip ist eine Weiterleitung nur eine automatische Umleitung von einer URL zu einer anderen URL. Es gibt unterschiedlichste Gründe, um aus SEO-Sicht Redirects einzusetzen:

  • Vermeidung von Duplicate Content
  • Behebung von 404-Fehlern und Wiederherstellung von Broken-Links
  • Domainänderung
  • Änderung in der URL Struktur

In der Praxis gibt es mehrere Optionen für die Umsetzung einer Weiterleitung. Bei Apache Webservern existiert mit der Hilfe von .htaccess Dateien eine sehr einfache Möglichkeit diese Weiterleitungen komfortabel zu erstellen. Das weltweit am meisten eingesetzte CMS WordPress, nutzt die .htaccess Konfigurations-Dateien bereits für die interne URL-Struktur. Redirects sind mit wenigen Handgriffen und ohne Programmierkenntnisse schnell eingerichtet. Es wird lediglich ein FTP/SFTP Zugriff auf den Webspace benötigt.

Tipp: Der HTTP-Statuscode 301 ist ein permanenter Redirect, welcher in 90% aller SEO-Fälle zum Einsatz kommen wird. Wer temporäre Redirects verwenden möchte, kann in allen Codebausteinen 301 auf 302 ändern.

301 Weiterleitung einer bestehenden Seite auf eine neue Seite:

Die einfachste Form einer Weiterleitung kann mit der Funktion “Redirect” erstellt werden. Die Codezeile wird in der .htaccess eingefügt und leitet genau eine URL auf eine neue URL weiter. Bei kleineren URL-Änderungen funktioniert diese Variante ausgezeichnet:

Redirect 301 /seite-alt/ https://www.domain.com/seite-neu/

Wenn ganze Domains oder größere Verzeichnisse mit einer Vielzahl an Unterseiten weitergeleitet werden sollen, dann kommt man mit dieser Vorgehensweise schnell an seine Grenzen. Hierbei kann man mit der Funktion mod_rewrite arbeiten, die in den nächsten Beispielen zum Einsatz kommt:

Domain Weiterleitung mit allen Unterseiten (Domainänderung + Umleitung)

Damit eine komplette Domain inkl. Unterseiten sowie Bildern und anderen Dateien auf eine neue Domain weitergeleitet werden kann, um so potenzielle Rankingverluste zu minimieren, ist es notwendig, mit erweiterten Regeln zu arbeiten:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} (www.)?domain-alt.com
RewriteRule (.*) https://www.domain-neu.com/$1 [R=301,L,NC]
</IfModule>

Die Anweisung kann um zusätzliche Domains erweitert werden:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} (www.)?domain-alt.at [OR]
RewriteCond %{HTTP_HOST} (www.)?domain2-alt.com [OR]
RewriteCond %{HTTP_HOST} (www.)?domain3.alt.de
RewriteRule (.*) https://www.domain-neu.com/$1 [R=301,L,NC]
</IfModule>

https Redirect mit .htaccess

Ein SSL-Zertifikat sollte für jeden Webseitenbetreiber mittlerweile zum Standard gehören. Damit nach der Installation des Zertifikats die gesamte Website nur noch über https:// aufgerufen werden kann, wird die unverschlüsselte http:// Variante mit einer Regel weitergeleitet. So lässt sich aus SEO-Sicht unnötiger Duplicate-Content vermeiden und das Crawling-Budget wird geschont.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NC]
</IfModule>

Weiterleitung von www. auf nicht-www. & vice versa

Bereits in der Konzeptionsphase einer Website sollte überlegt werden ob diese bevorzugt mit oder ohne www. davor aufrufbar sein soll. (https://klickimpuls.at vs. http://www.klickimpuls.at) Die jeweils andere Variante wird dann auf diese umgeleitet, sodass immer die selbe Schreibweise der Domain verwendet wird.

non-www auf www

Beispiel: https://klickimpuls.at -> https://www.klickimpuls.at inkl. aller Unterseiten

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule (.*) https://www.domain.com/$1 [R=301,L,NC]
</IfModule>

www auf non-www

Beispiel: https://www.klickimpuls.at -> https://klickimpuls.at inkl. aller Unterseiten

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.domain.com [NC]
RewriteRule (.*) https://domain.com/$1 [R=301,L,NC]
</IfModule>

Weiterleitung von Ordnern (Verzeichnissen) inkl. Unterseiten

Sollte sich auf einer Website ein Verzeichnis oder in einem Online-Shop eine Kategorie-URL ändern, so kann es notwendig sein, alle darunter liegenden URLs auf die neue Ordnerstruktur weiterzuleiten:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^kategorie-alt/(.*)$ /kategorie-neu/$1 [R=301,L,NC]
</IfModule>

Query-String-Parameter aus URL entfernen

In folgendem Beispiel wird der Parameter param1 aus der URL entfernt bzw. auf die originale URL ohne Parameter weitergeleitet:

Beispiel: https://www.klickimpuls.at/seo-agentur/?param1=5732829 -> https://www.klickimpuls.at/seo-agentur/

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} param1=(.*)$
RewriteRule ^(.*)$ /$1? [R=301,L,NC]
</IfModule>

Fazit: Weiterleitungen sind ein wichtiges technisches Hilfsmittel, um die eigene Website sauber zu halten. Leider wird dieser Faktor gerade bei einem Website-Relaunch oft nicht berücksichtigt, was in späterer Folge zu einem bösem Erwachen führen kann.

Bildquelle: hecos2555 / www.bigstock.com

Facebook
Twitter
LinkedIn
Email

Hast du noch Fragen?

Kontaktiere uns: office@klickimpuls.at oder 050231/1000

Das wird dich auch interessieren …

Patrick
Patrick
Gründer und Geschäftsführer Patrick, seit über einer Dekade im Online-Bereich tätig, hält bei uns alle Business-Fäden gekonnt in der Hand und betreut mit Leidenschaft seine Kunden. Er schwingt aber nicht nur das Business-Zepter, sondern auch die Grillzange und serviert seinen Mitarbeitern allerlei Köstlichkeiten.

Veröffentlicht

Unverbindlich Anfragen