2016-04-21 5 views
0

Ich versuche, von der alten URL zur neuen URL unter Verwendung von unten Code umzuleiten.htaccess 301 Umleitung von der alten URL zur neuen URL funktioniert nicht

RewriteEngine on 

RewriteRule ^restaurantDetails.php?resid=(.+)&resname=(.+)$ /restaurant/$1/$2 [R=301,L] 

Aber seine nicht funktioniert

oder , wenn ich in der Adresszeile wie sehen unter http://www.starmed.dk/restaurantDetails.php?resid=9&resname=demo-restaurant

dann wird es zu http://www.starmed.dk/restaurant/9/demo-restaurant

Jede Idee leiten, wie dies zu tun mit eine HTACCESS 301 Redirect?

Antwort

0

können Sie die folgende Regel verwenden:

RewriteEngine on 
RewriteCond %{THE_REQUEST} /restaurantDetails\.php\?resid=([^&]+)&resname=([^&\s]+) [NC] 
RewriteRule^/restaurant/%1/%2? [NC,R=301,L] 
RewriteRule ^restaurant/([^/]+)/([^/]+)/?$ /restaurantDetails\.php\?resid=$1&resname=$2 [NC,L] 
+0

Seine Umleiten auf neue URL. Aber es zeigt 404 Fehler. Bitte klicken Sie auf diesen Link, dann können Sie die Ausgabe sehen http://www.starmed.dk/restaurantDetails.php?resid=9&resname=demo-restaurant – mikejohnvino

+0

Ist die neue URL/Pfad auf Ihrem Server vorhanden? – starkeen

+0

ja, das habe ich so umgesetzt. #Suchdetails --------------------------------------------- ----------- RewriteCond% {QUERY_STRING}^resid = ([^ &] +) & resname = ([^ &] +) $ [NC] RewriteRule^restaurantDetails.php $/restaurant/% 1 /% 2? [R = 301, L] #RewriteRule^restaurant/([^ \ /] +)/([^ \ /] +) $ restaurantDetails.php? Resid = $ 1 & resname = $ 2 [NC, L] #RewriteRule^restaurant/([^ \ /] +)/([^ \ /] +)/$ restaurantDetails.php? resid = $ 1 & resname = $ 2 [NC, L] – mikejohnvino