Rewri­te-Rules mit Platzhalter

Lese­dau­er 4 Minu­ten

Bei einem Umzug einer Web­site, die auf einem CMS wie Wor­d­Press oder Joom­la basiert, ist es schnell pas­siert, dass Links von Goog­le oder drit­ten Sei­ten ins Lee­re gehen. Das ist SEO-tech­nisch sehr schlecht. Bes­ser man fängt die toten Links mit Rewri­te-Rules ab und teilt Goog­le mit, dass die­se per­ma­nent umge­zo­gen sind. In Joom­la gibt es dafür die Umlei­tungs­kom­po­nen­te, die aber kei­ne Platz­hal­ter kennt und auch schnell unüber­sicht­lich wird.

Wir arbei­ten hier mit der htac­cess-Datei des Apa­che-Ser­vers, die Ihr in der Root… nein, las­sen wir das. Ihr soll­tet schon wis­sen, was die htac­cess ist und wie man sie kor­rekt bear­bei­tet. Trotz­dem: „Kein Back­up, kein Mit­leid” gilt auch hier: Vor den Ände­run­gen bit­te ein Back­up der Datei erstellen.

Vor­wort
Mein per­sön­li­ches Pro­blem war, dass sich über die Jah­re mei­ne alte Sei­te tote​-pixel​.de the­ma­tisch immer wie­der ver­schob. Da waren Arti­kel von alten Home­com­pu­tern und Tele­spie­len – so war es auch gedacht – da waren aber auch vie­le Arti­kel über aktu­el­le Com­pu­ter­tech­nik, Autos oder den Gar­ten­bau! Das pass­te ein­fach nicht zusam­men. Aus eine Sei­te mach­te ich also deren drei:
tote​-pixel​.de
hess​burg​.de
hess​burg​.de

Alle Arti­kel kopier­te ich tat­säch­lich hän­disch von einem Edi­tor in den ande­ren. Das lag ein­fach dar­an, dass die Bei­trä­ge „his­to­risch gewach­sen” waren und ich vie­le Details im Design noch mit Tabel­len regel­te, da die ers­ten Arti­kel noch mit Mam­bo erstellt waren und eini­ges sogar noch aus der Zeit von Front­pa­ge und Net­Ob­jects Fusi­on stamm­ten. Ich muss­te alles sich­ten und bereinigen.

Sehr zupass für die Umlei­tung kam mir in mei­nem kon­kre­ten Fall, dass mei­ne alte Joom­la-Instal­la­ti­on die Links noch mit der Arti­kel-ID gene­rier­te, so dass ich ein­deu­ti­ge Such­be­grif­fe defi­nie­ren konnte.

Fall­stri­cke
Auf der neu­en Sei­te ver­zich­te­te ich auf die IDs und ließ die URL auf die „moder­ne” Wei­se gene­rie­ren. Ein­fach auch aus dem Grun­de, dass ein eigent­lich tote Link wie tote-pixel.de/4711-Thema‑A.html beim Auf­ruf von der neu­en Joom­la-Instal­la­ti­on zu dem Arti­kel tote-pixel.de/4711-Thema‑X.html umge­lei­tet wur­de. Tat­säch­lich ist es Joom­la völ­lig egal, was noch hin­ter der Arti­kel-ID steht, der Link wird nur bis zur ID aus­ge­le­sen und dann direkt auf einen Arti­kel gemappt. Bei einem Umzug ist also das völ­li­ge Cha­os vorprogrammiert.

Anlei­tung
Als ers­tes erstel­len wir uns eine Tabel­le, in die wir ein­fach alle neu­en URL der Arti­kel ein­tra­gen wer­den, die auf unse­rer ursprüng­li­chen Sei­te vor­han­den waren. In der Tabel­le habe ich gleich noch die Kom­men­ta­re für die htac­cess mit hin­ein geschrie­ben sowie die Para­me­ter der Rewri­te-Rules. Ist klar, ein­mal den Wert ein­tra­gen, die Zel­le mar­kie­ren und dann am rech­ten unte­ren „Knub­bel” nach unten zie­hen, um die Spal­te auto­ma­tisch mit den Wer­ten aus­zu­fül­len. Schliess­lich willst Du am Ende ja nicht jede Rewri­te-Rule per Hand edi­tie­ren müssen.

Libre Sheet

Nun suchen wir uns in unse­rer alten Instal­la­ti­on (z.B. lokal mit XAMPP instal­liert)  die dama­li­gen Links her­aus. In mei­nem Fal­le wur­de der Link aus der Arti­kel-ID und dem Ali­as gebil­det. Ich nahm also die ID (ganz rechts im Bild) und den ers­ten Teil des Ali­as (hin­ter dem Titel) als Such­be­griff für die per­ma­nen­te 301-Weiterleitung.

  • (Wer­bung) hessburg affi cloud banner

Bei­spiel: „(.*)0123-der-retro(.*)” für den Arti­kel „Der Retro­um­rech­ner” (URL: „www​.hess​burg​.de/​0​1​2​3​-​d​e​r​-​r​e​t​r​o​u​m​r​e​c​h​n​e​r​.​h​tml”

TP Alt inhalte

Wenn wir damit fer­tig sind, spei­chern wir das Sheet als CSV-Datei: UTF‑8, als Feld­tren­ner ein Leer­zei­chen, die Zell­in­hal­te wie ange­zeigt und die even­tu­ell vor­han­den „For­meln” nicht aus­rech­nen lassen.

301 Libre Speichern CSV

Wir öff­nen die­se Datei in einem Text­edi­tor und schau­en, ob alles soweit in Ord­nung ist. Even­tu­ell vor­han­de­ne Tabu­la­tor-Sprün­ge suchen und löschen wir.
Eine kor­rek­te Wei­ter­lei­tung soll­te zum Bei­spiel wie folgt aussehen:

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

Rewrite-Rules
Mei­ne Güte! Was für eine Text­wüs­te! Da sieht man ja gar kei­ne mög­li­chen Fehler!
Kein Pro­blem, wir las­sen unse­rer Regeln mal eben über­prü­fen:
htacces tester nahe

Dazu kön­nen wir sogar eine alte, tote URL in das obe­re Such­feld ein­ge­ben und das Tools zeigt uns dann ob und wel­che Regel gegrif­fen hat. Natür­lich wird dabei auch die kor­rek­te Syn­tax überprüft.

Fein, die Datei ist okay, aber sind auch unse­re Wei­ter­lei­tungs­zie­le über­haupt erreich­bar? Wir kopie­ren die Spal­te mit den neu­en URL aus dem Sheet und fügen sie bei einem Link­prü­fer ein.

techseo url online nahe
Alle Links sind grün? Super! Dann kopie­ren wir unser Rewri­te-Rules aus dem Edi­tor irgend­wo pas­sen­de hin­ter den fol­gen­den Ein­trä­gen ein:

RewriteEngine On
RewriteBase /

Ab jetzt wird die Joom­la-Daten­bank nicht mehr so durch die Umlei­tungs­kom­po­nen­te belas­tet und die Site wird ins­ge­samt schnel­ler. Durch die Ver­wen­dung von Wildcards/​Platzhaltern/​Suchbegriffen (nennt es, wie Ihr wollt), ist das gan­ze noch ein gutes Stück schnel­ler, spar­sa­mer und über­sicht­li­cher gelöst.

Natür­lich funk­tio­niert das gan­ze mit jed­we­der Website/​CMS, was auch immer.

Schreibe einen Kommentar

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