Am Wochenende stand der Umzug eines Onlineshops auf der Agenda, die folgende Herausvorderung mit sich brachte:

Der neue Shop hat zwar einen eingebautes Weiterleitungsdmodul um Alt-URLs auf die richtige Bahn, bzw. neue URL zu lenken,
ABER leider ignoriert er alles, was in dem Alt-Shop hinter dem ? der index.php steht (z.b. index.php?page=categorie&cat=157).

Bei knapp 1000 Artikel ziemlich ärgerlich.

Die Lösung ist wie so häufig die .htaccess Datei, die sich im Hauptverzeichnis des Shops befindet, bzw angelegt werden muss:

RewriteEngine on
RewriteCond %{query_STRING} ^page=categorie&cat=157(.*)$
RewriteRule ^index\.php$ /Lochrastervakuumtische? [R=301,L]

Was macht die Regel?

RewriteEngine on

Die Umleitungs- bzw. Umschreibefunktion wird aktiviert

RewriteCond %{query_STRING} ^page=categorie&cat=157(.*)$

Hier wird abgefragt welche URL dort angefragt (%{query_STRING} ) und passt diese in ein gewünschtes Suchergebnis (page=categorie&cat=157)

RewriteRule ^index\.php$ /Lochrastervakuumtische? [R=301,L]

Das ist das Weiterleitungsziel. Die vor dem Suchstring stehende (page=categorie&cat=157index\.php wird duch /Lochrastervakuumtische? ersetzt. Das ? am Ende schneidet auch den Rest der Parameter ab, die sonst wieder hinten angehängt werden würden.

[R=301,L]

L = weitermachen! Nächste Regel bitte.
301
= Permanente Weiterleitung. Damit Google sich auch brav die neue URL merkt und die alte vergisst. LINK