301 редирект

B
На сайте с 17.01.2014
Offline
0
540

Здравствуйте!

URL имел вид - http://www.site.ru/show_good.php?idtov=20&grid=1

теперь URL такой - http://www.site.ru/show_good.php?idtov=20

Нужно сделать 301 редирект. Очень прошу помочь в данном вопросе.

IL
На сайте с 20.04.2007
Offline
435
#1

RewriteCond %{QUERY_STRING} idtov=(\d+)&grid
RewriteRule ^show_good\.php$ /show_good.php?idtov=%1 [R=301,L]
... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
B
На сайте с 17.01.2014
Offline
0
#2

Спасибо большое за ответ. Но что-то не работает... URL в адресной строке не меняется.

Скажите, пожалуйста, данный код подойдет для всех адресов show_good ? А если idtov=1000000, например? И еще, нужно ли в файле .htaccess перед этим кодом прописывать какие-то дополнительные строки строки?

IL
На сайте с 20.04.2007
Offline
435
#3
Barsutka:
какие-то дополнительные строки строки?

Как минимум, вставлять после

RewriteEngine On
B
На сайте с 17.01.2014
Offline
0
#4

Все сделала, но url все равно не меняется...

K
На сайте с 16.12.2009
Offline
185
#5

Недавно в соседней ветке был аналогичный вопрос.

Я там такой код порекомендовал использовать:

RewriteEngine On

RewriteRule ^([^\&]+)\&.*$ /$1 [R=301]

Этот код отбрасывает все парамерты после & в URLe и редиректит на URL без этих параметров.

Может и вам подойдет, главное, чтобы в вызываемых URLах первый параметр был именно idtov

freebitco.in - раздача BitCoin'ов + депозит в BTC под 4,08% (https://goo.gl/M1WZoZ)
siv1987
На сайте с 02.04.2009
Offline
427
#6
Kuasar:
Я там такой код порекомендовал использовать:

Такой код не рабочий - в rewriterule не обрабатывается строка запроса. ТСу правильно написали, пусть еще раз все перепроверит и сбросит кеш браузера

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий