Редирект, требуется помощь

12 3
mff
На сайте с 21.02.2008
Offline
282
mff
1894

Коллеги, помогите пожалуйста с редиректом. Нужно сделать так, что бы при заходе по ссылке http://site.ru/?co=8 кидало на http://site.ru/index.php?co=8 А то получается как дубликаты.

За ранее спасибо, с уважением Александр.

Управление репутацией в сети: https://timbook2.ru/
Присущ
На сайте с 06.01.2011
Offline
929
#1

А не проще закрыть индекс в роботс?! Чтоб не плодить ситуации.

Прототипы и юзабилити, чтоб продавал и в топ попал Анализ сложившихся бизнес моделей и поиска точек роста Директ — от 2500 р, включая бюджет на клики / Аудит РК до и после запуска — от 5000 р
J
На сайте с 20.02.2014
Offline
120
jkm
#2

RewriteCond %{THE_REQUEST} " /\?co=8 "

RewriteRule ^ http://site.ru/index.php?co=8 [R=301,L]
mff
На сайте с 21.02.2008
Offline
282
mff
#3
jkm:
RewriteCond %{THE_REQUEST} " /\?co=8 "

RewriteRule ^ http://site.ru/index.php?co=8 [R=301,L]

Спасибо! Но это правило будет работать только для одной страницы. Мне нужно чтоб для всех работало. А если там будет ?co=9 или ?co=100

С ув.

M
На сайте с 04.12.2013
Offline
223
#4

mff, первый адрес более вменяемый. Может, лучше наоборот?

---------- Добавлено 06.01.2019 в 15:09 ----------

mff:
А если там будет ?co=9 или ?co=100
Вместо 8 – маска ([1-9]\d*), а первая подстановка из условия обозначается %1.
Домены и скрипт для коротких ссылок: https://u75.ru/domains-for-shortcuts
mff
На сайте с 21.02.2008
Offline
282
mff
#5
miketomlin:
mff, первый адрес более вменяемый. Может, лучше наоборот?

---------- Добавлено 06.01.2019 в 15:09 ----------

Вместо 8 – маска ([1-9]\d*), а первая подстановка из условия обозначается %1.

Да на сайте все ссылки прописаны как index.php Позже буду ЧПУ делать, а пока надо как то кастыль поставить, а то в вебмастере увидел ссылку http://site.ru/?co=8 откуда она могла взяться ума не приложу.

RewriteCond %{THE_REQUEST} " /\?co=[1-9]\d* "

RewriteRule ^ http://site.ru/index.php?co=[1-9]\d* [R=301,L]
Вот так? А %1 куда? Извините, не силен в этих реврайтах :o С ув.
J
На сайте с 20.02.2014
Offline
120
jkm
#6


RewriteCond %{THE_REQUEST} " /\?co=([1-9]\d*) "
RewriteRule ^ http://site.ru/index.php?co=%1 [R=301,L]
mff
На сайте с 21.02.2008
Offline
282
mff
#7
jkm:

RewriteCond %{THE_REQUEST} " /\?co=([1-9]\d*) "
RewriteRule ^ http://site.ru/index.php?co=%1 [R=301,L]

Большое спасибо! Работает! Но сейчас глянул, там ссылки могут быть вида: http://site.ru/index.php?co=60&ge=1&pg=2 и тогда код не работает :( Помогите пожалуйста дописать. С ув.

S
На сайте с 30.09.2016
Offline
469
#8

RewriteRule ^$ /index.php [R=301,L,QSA]

Или так, если главную без индекса оставить хотите

RewriteCond %{QUERY_STRING} ^.+
RewriteRule ^$ /index.php [R=301,L,QSA]
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
mff
На сайте с 21.02.2008
Offline
282
mff
#9
Sitealert:
Код:

Большое спасибо! Работает! Но подставляет теперь на главной /index.php

Sitealert:
Или так, если главную без индекса оставить хотите

Попробовал, не работает :( С ув.

S
На сайте с 30.09.2016
Offline
469
#10
mff:
Попробовал, не работает

Историю браузера почистите, там редирект сохраняется.

12 3

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