Маленький нюанс после mod_rewrite

12
MX
На сайте с 30.01.2004
Offline
18
1349

возник интересный вопрос -

после Mod_rewrite имеем два адреса страницы

/articles/123.html

articles.php?id=123

Соответсвенно роботы лопатят и те и те странцы, причем часто в выдаче выше стоит вариант с ?id=

Есть два варианта решения

1) вариант с ?id= запрещаем к индексации в robots.txt

2) Пишем хитрую rewritin'у, чтобы исключить прямой вызов варианта с ?id= , хотя я пока не слишком хорошо представляю как

Кто чего посоветует?

Заранее спасибо

С уважением, Михаил
L
На сайте с 24.02.2005
Offline
181
#1

По собственному опыту могу сказать что на 2 вариант ходят исключительно с Рамблера, что говорит косвенно о том, что давно не переиндексировался сайт. А вообще думаю не особо разница ощутима, на худой конец через редирект 301 пиши и все

Oniks
На сайте с 22.08.2005
Offline
176
#2

Эта "хитрая" состоит в том, чтобы вместо L написать R=301,L :)

Профессиональные услуги фотографа в Москве и области (http://www.oniks-photo.ru/) покупаю стать и ссылки с сайтов про охоту
pauk
На сайте с 26.01.2005
Offline
543
#3
Michael_XIII:
articles.php?id=123

Между прочим, Гугль id вообще не индексирует :)

Hi!
K
На сайте с 23.10.2004
Offline
159
#4

Похожий вопрос:

раньше ссылки были динамические (index.php?about=map), теперь заменил на статические (/about/map.html)

Теперь (что естественно) хочу перенаправлять старые адреса на новые.

Вроде бы все просто, НО не получается 😕

ни так

Redirect 301 index.php?about=map http://www.***.ru/about/map.html

ни так

RewriteRule index.php?about=([a-zA-Z]+) /about/$1.html [R=301]

Где я торможу?

СКОРПИОН
На сайте с 05.01.2006
Offline
120
#5
kravru:
Где я торможу?

При написании директивы RewriteRule нужно учитывать, что url обрабатывается до строки параметров, т.е. они отбрасываются. Если нужно написать правило с учётом параметров, то до него должно стоять условие RewriteCond, которое, в свою очередь, может проверить значения различных внутренних переменных, в том числе и %{QUERY_STRING}, которая и содержит в себе параметры.

• Контекстные ссылки с внутренних страниц навсегда (/ru/forum/370882) • Качественные сайты для заработка на контекстной рекламе и ссылках
L
На сайте с 24.02.2005
Offline
181
#6

2 kravru - Странное какое то правило, нелегче ли написать так

RewriteRule index.php?([a-z]+)=([a-z]+) /$1/$2.html [R=301]

к примеру

2 pauk - Гугл id не распознает? По моему бред. На моих сайтах на старых стояло все с id и все индексилось прекрасно

NN
На сайте с 15.08.2005
Offline
113
#7

А ссылке на сайте сохранились вида ?id=... ?

Я когда переделал движок, так все и оставил. Работали и новые и старые ссылки, но на сайте везде были только новые. Со временем старые адреса заменились на новые в поисковиках.

vscrypto.com Сравнение контрактов облачного майнинга (http://www.vscrypto.com) || Genesis-Mining (http://www.vscrypto.com/genesis-mining) || Omnia-Tech (http://www.vscrypto.com/omnia-tech) || Статистика сети BTC, прогноз сложности (http://www.vscrypto.com/btc-stat-year)
СКОРПИОН
На сайте с 05.01.2006
Offline
120
#8
Locker:
2 kravru - Странное какое то правило, нелегче ли написать так
RewriteRule index.php?([a-z]+)=([a-z]+) /$1/$2.html [R=301]
к примеру

Такое правило работать не будет по причине, указанной мной выше.

a.fatman
На сайте с 15.01.2006
Offline
127
#9
pauk:
Между прочим, Гугль id вообще не индексирует

У вас устаревшие данные. Очень даже индексирует.

M
На сайте с 21.11.2004
Offline
230
#10
Michael_XIII:
Соответсвенно роботы лопатят и те и те странцы, причем часто в выдаче выше стоит вариант с ?id=

Странно, уберите старые ссылки и будет вас счастье.

Продвигаю домены руками (http://roke.ru)
12

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