2016-07-18 16 views
1

Ich brauche eine Mod-Rewrite-Regel, die alle URLs, die irgendetwas zwischen town & country enthalten, auf eine neue URL mit nichts zwischen Stadt und Land außer einem Bindestrich umleitet.Umleiten aller URLs mit zusätzlichen Wörtern zwischen zwei Wörtern zu nicht?

z:

http://www.example.com/big-town-4-h-country-2j/

zu:

http://www.example.com/big-town-country-2j/

ich diesen Code versucht, aber nichts passieren:

RewriteEngine on 
RewriteRule (.*)town.+country(.*) $1town-country$2 

Meine volle .htaccess-Code ist:

<IfModule mod_rewrite.c> 
Options +FollowSymlinks 
RewriteEngine on 

RewriteCond %{HTTP_HOST} ^example\.com 
RewriteRule ^(.*)$ http://www.example.com/$1 [R=permanent,L] 
RewriteRule (.*)/$ /?l=$1 
RewriteRule (.*)country-(.*)$ country.php?q=$1&l=$2&submit=1 

</IfModule> 

Antwort

1

Sie diese Regel verwenden sollte:

RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_URI} !town-country [NC] 
RewriteRule ^(.*)town[^/]+country(.*)$ $1town-country$2 [L,R=301] 
+0

Dank, es funktionierte – Smith

+0

Jede Idee, über diese Frage: http://stackoverflow.com/questions/38498774/return-404-error-for-all -Extra-Zeichen nach der Sekunde – Smith