Rewrite-Rules mit Platzhalter

Bei einem Umzug einer Website, die auf einem CMS wie WordPress oder Joomla basiert, ist es schnell passiert, dass Links von Google oder dritten Seiten ins Leere gehen. Das ist SEO-technisch sehr schlecht. Besser man fĂ€ngt die toten Links mit Rewrite-Rules ab und teilt Google mit, dass diese permanent umgezogen sind. In Joomla gibt es dafĂŒr die Umleitungskomponente, die aber keine Platzhalter kennt und auch schnell unĂŒbersichtlich wird.

Wir arbeiten hier mit der htaccess-Datei des Apache-Servers, die Ihr in der Root… nein, lassen wir das. Ihr solltet schon wissen, was die htaccess ist und wie man sie korrekt bearbeitet. Trotzdem: „Kein Backup, kein Mitleid“ gilt auch hier: Vor den Änderungen bitte eine Sicherung der Datei erstellen.

Vorwort
Mein persönliches Problem war, dass sich ĂŒber die Jahre meine alte Seite tote-pixel.de thematisch immer wieder verschob. Da waren Artikel von alten Homecomputern und Telespielen – so war es auch gedacht – da waren aber auch viele Artikel ĂŒber aktuelle Computertechnik, Autos oder den Gartenbau! Das passte einfach nicht zusammen. Aus eine Seite machte ich also deren drei:
tote-pixel.de
hessburg.de
hessburg.de

Alle Artikel kopierte ich tatsĂ€chlich hĂ€ndisch von einem Editor in den anderen. Das lag einfach daran, dass die BeitrĂ€ge „historisch gewachsen“ waren und ich viele Details im Design noch mit Tabellen regelte, da die ersten Artikel noch mit Mambo erstellt waren und einiges sogar noch aus der Zeit von Frontpage und NetObjects Fusion stammten. Ich musste alles sichten und bereinigen.

Sehr zupass fĂŒr die Umleitung kam mir in meinem konkreten Fall, dass meine alte Joomla-Installation die Links noch mit der Artikel-ID generierte, so dass ich eindeutige Suchbegriffe definieren konnte.

Fallstricke
Auf der neuen Seite verzichtete ich auf die IDs und ließ die URL auf die „moderne“ Weise generieren. Einfach auch aus dem Grunde, dass ein eigentlich tote Link wie tote-pixel.de/4711-Thema-A.html beim Aufruf von der neuen Joomla-Installation zu dem Artikel tote-pixel.de/4711-Thema-X.html umgeleitet wurde. TatsĂ€chlich ist es Joomla völlig egal, was noch hinter der Artikel-ID steht, der Link wird nur bis zur ID ausgelesen und dann direkt auf einen Artikel gemappt. Bei einem Umzug ist also das völlige Chaos vorprogrammiert.

Haftungsausschluss

ACHTUNG! NICHT NACHMACHEN!

  1. Dies ist keine Anleitung!
  2. Der Artikel dient der persönlichen Dokumentation!
  3. Dieser Artikel soll nicht die beiliegenden Anleitungen, Einbauhinweise oder Installationsanleitungen ersetzen!
  4. Dieser Artikel soll einen groben Überblick ĂŒber die anfallenden Arbeiten ermöglichen.
  5. Der Artikel erhebt keinen Anspruch auf VollstÀndigkeit oder gar Korrektheit.
  6. Hier beschreibe ich, wie ich diese Arbeiten als Laie erledigt habe – nicht, wie man sie korrekt oder nach handwerklichen Standards, Vorschriften oder Gesetzen erledigt.
  7. Ich lehne jede Verantwortung, Haftung und GewÀhrleistung ab. Jeder muss selbst wissen, was er macht.
  8. Einige Arbeiten sind durch Fachfremde nicht zulĂ€ssig, respektive gesetzwidrig und bedĂŒrfen teilweise mindestens der Abnahme durch einen ausgebildeten Berechtigten.
  9. Einige Handlungen und Arbeiten sind im öffentlichen Bereich (Straßenverkehr, Stromnetz, Luftraum, Internet, etc.) verboten oder verstoßen gegen Lizenzvereinbarungen, was straf- oder zivilrechtliche Konsequenzen nach sich ziehen kann.
  10. 230 Volt sind tödlich!
  11. Kein Backup? Kein Mitleid!
  12. Meine 3D-Modelle sind nur Machbarkeitsstudien, keine geprĂŒften, funktionsfĂ€higen Bauteile.
  13. Die beschriebenen TĂ€tigkeiten sind in der Folge rein akademischer Natur.
  14. Bedenke, dass durch Deine Arbeiten Dritte an Leib und Leben gefĂ€hrdet werden können und Du persönlich dafĂŒr haftest.

Mit dem Weiterlesen stimmst Du diesem Haftungsausschluss zu.

DurchfĂŒhrung
Als Erstes erstellen wir uns eine Tabelle, in die wir einfach alle neuen URL der Artikel eintragen werden, die auf unserer ursprĂŒnglichen Seite vorhanden waren. In der Tabelle habe ich gleich noch die Kommentare fĂŒr die htaccess mit hinein geschrieben sowie die Parameter der Rewrite-Rules. Ist klar, einmal den Wert eintragen, die Zelle markieren und dann am rechten unteren „Knubbel“ nach unten ziehen, um die Spalte automatisch mit den Werten auszufĂŒllen. Schließlich willst Du am Ende ja nicht jede Rewrite-Rule per Hand editieren mĂŒssen.

Nun suchen wir uns in unserer alten Installation (z.B. lokal mit XAMPP installiert)  die damaligen Links heraus. In meinem Falle wurde der Link aus der Artikel-ID und dem Alias gebildet. Ich nahm also die ID (ganz rechts im Bild) und den ersten Teil des Alias (hinter dem Titel) als Suchbegriff fĂŒr die permanente 301-Weiterleitung.

Beispiel: „(.*)0123-der-retro(.*)“ fĂŒr den Artikel „Der Retroumrechner“ (URL: „www.hessburg.de/0123-der-retroumrechner.html“

Wenn wir damit fertig sind, speichern wir das Sheet als CSV-Datei: UTF-8, als Feldtrenner ein Leerzeichen, die Zellinhalte wie angezeigt und die eventuell vorhanden „Formeln“ nicht ausrechnen lassen.

Wir öffnen diese Datei in einem Texteditor und schauen, ob alles so weit in Ordnung ist. Eventuell vorhandene Tabulator-SprĂŒnge suchen und löschen wir.
Eine korrekte Weiterleitung sollte zum Beispiel wie folgt aussehen:

RewriteRule (.*)1122-handy(.*) https://hessburg.de/billiger-trick-handyhalterung-verbessern/ [R=301,L]

Rewrite-Rules
Meine GĂŒte! Was fĂŒr eine TextwĂŒste! Da sieht man ja gar keine möglichen Fehler!
Kein Problem, wir lassen unserer Regeln mal eben ĂŒberprĂŒfen:

Dazu können wir sogar eine alte, tote URL in das obere Suchfeld eingeben und das Tools zeigt uns dann ob und welche Regel gegriffen hat. NatĂŒrlich wird dabei auch die korrekte Syntax ĂŒberprĂŒft.

Fein, die Datei ist okay, aber sind auch unsere Weiterleitungsziele ĂŒberhaupt erreichbar? Wir kopieren die Spalte mit den neuen URL aus dem Sheet und fĂŒgen sie bei einem LinkprĂŒfer ein.


Alle Links sind grĂŒn? Super! Dann kopieren wir unser Rewrite-Rules aus dem Editor irgendwo passende hinter den folgenden EintrĂ€gen ein:

RewriteEngine On
RewriteBase /

Ab jetzt wird die Joomla-Datenbank nicht mehr so durch die Umleitungskomponente belastet und die Site wird insgesamt schneller. Durch die Verwendung von Wildcards/Platzhaltern/Suchbegriffen (nennt es, wie Ihr wollt), ist das ganze noch ein gutes StĂŒck schneller, sparsamer und ĂŒbersichtlicher gelöst.

NatĂŒrlich funktioniert das Ganze mit jedweder Website/CMS, was auch immer.

Über den Autor

Hessi

Michael "Hessi" Heßburg ist ein ehemaliger Informatiker mit langjĂ€hriger Erfahrung und ein vielseitiger Technik-Enthusiast mit Interessen in Haus & Garten, Hausrenovierung, IT, 3D-Druck, Retrocomputing und Autoreparatur. DarĂŒber hinaus beschĂ€ftigt er sich auf seiner Website mit gesellschaftspolitischen Themen wie Datenschutz und Überwachung. Hessi betreibt diese Website seit ĂŒber 25 Jahren und ist seit 20 Jahren freiberuflicher Autor. In seinem Blog teilt er fundierte Einblicke und praktische Tipps, um seine Leser bei ihren Projekten und Hobbys zu unterstĂŒtzen. Hessi legt großen Wert darauf, dass seine Themen sorgfĂ€ltig recherchiert und auch fĂŒr Laien verstĂ€ndlich aufbereitet sind.

Schreibe einen Kommentar

Ich bin mit der DatenschutzerklÀrung und der Speicherung meiner eingegebenen Daten einverstanden.