2017-12-12 4 views
0

Ich habe eine Website, die alten URLs wie/news/Geschichte/MasterCard_-Konten-Don_t-Need-To-Own-Accounts-Bis-Volume-Hits-_maximummod_rewrite entfernen Unterstrichen von URLS

hat, dass müssen sein/news/story/MasterCard-Konten-Nicht-zu-Own-Accounts-Unlimited-Hits-Maximum

Die URLs stammen aus einer früheren Site-Version, die Sonderzeichen in Unterstriche umgewandelt hat. Die neue Seite lässt einfach die Unterstriche aus, die 404s auf allen indexierten und internen Links verursachen.

Also im Grunde, ich freue mich, sie ohne die Unterstriche neu geschrieben haben. Alles, was ich finde, zeigt nur, wie man sie in ein anderes Zeichen wie einen Bindestrich ändert, aber das passt nicht zu meiner Anforderung. Können sie einfach weggeschrubbt werden? Ich kann dies über Htaccess tun oder eine Regex im Redirection-Plugin verwenden. Jede Hilfe wäre sehr willkommen, wenn ich zu diesem Zeitpunkt meinen Kopf auf meinen Schreibtisch haue.

+1

[Dies] (https://stackoverflow.com/questions/18189363/htaccess-delete-characters-from-url -und-redirect) kann Ihnen helfen, eine geeignete Lösung zu finden – ctwheels

Antwort

0

Sie können diesen rekursive Satz von Regeln in Ihrer Website root .htaccess verwenden:

RewriteEngine On 

RewriteRule ^([^_]*)_+([^_]*)$ /$1$2 [L,R=301,NE] 
RewriteRule ^([^_]*)_+(.*)$ $1$2 [N,DPI] 
+0

Kommentieren Sie hier, falls Sie auf ein Problem stoßen. – anubhava

Verwandte Themen