2017-07-12 9 views
0

Während des Upgrades von Magento auf 1.9.3.4 wurde die .htaccess-Datei überschrieben und ich habe jetzt mehr als 2000 fehlerhafte Links, die ich manuell erstellt habe.URLs mit RegExp und Mod Rewrite umleiten

Da die alten Produkt-URLs am Ende eine Zufallszahl hatten und jetzt nicht haben, suche ich nach einer Möglichkeit, sie umzuleiten.

Alte URLs Struktur:

http://example.com/category-1/subcategory/product-name-1421.html 
http://example.com/category-2/subcategory/product-name-5421.html 
http://example.com/category-3/subcategory/product-name-5891.html 

Neue URLs Struktur:

http://example.com/category-1/subcategory/product-name.html 
http://example.com/category-2/subcategory/product-name.html 
http://example.com/category-3/subcategory/product-name.html 

Ich weiß, dass ich etwas RegExp wie RewriteRule ^category/subcategories/(.+?)(-[0-9]+)?$ category/subcategories/$1 [L,R=301] verwenden kann, aber ich bekommen konnte nicht daran zu arbeiten.

+0

Warum holen Sie nicht einfach die alte '.htaccess' Datei aus dem Backup? – arkascha

+0

@arkascha Ich wünschte, ich hätte eine Sicherungskopie. Die eine, die ich habe, hat nicht die '.htaccess' Datei. –

+0

Das ist sehr traurig zu hören. Wie auch immer das passiert ist ... Ich hoffe meine Antwort unten hilft aber ;-) – arkascha

Antwort

0

ich dies wahrscheinlich sagen würde, ist, was Sie suchen:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^/?category/subcategory/(.+?)-\d+\.html$ /category/subcategory/$1.html [R=301] 

Dazu Sie natürlich das Umschreiben Modul in Ihrem HTTP-Server aktiviert müssen. Wenn Sie eine dynamische Konfigurationsdatei verwenden möchten (siehe unten ...), müssen Sie dies ebenfalls aktivieren (siehe Richtlinie AllowOverride).


Und ein allgemeiner Hinweis: Sie sollten immer bevorzugen solche Regeln innerhalb des http-Servers (virtuellen) Host-Konfiguration anstelle der Verwendung von dynamischen Konfigurationsdateien (.htaccess Style-Dateien) zu platzieren. Diese Dateien sind notorisch fehleranfällig, schwer zu debuggen und verlangsamen den Server wirklich. Sie werden nur als letzte Option für Situationen angeboten, in denen Sie keine Kontrolle über die Host-Konfiguration haben (lesen Sie: wirklich günstige Hosting-Service-Provider) oder wenn Sie eine Anwendung haben, die eigene Schreibregeln schreibt (was ein offensichtlicher Sicherheitsalarm ist)).

+0

es hat funktioniert. Danke, dass du meinen Tag gerettet hast. –