mod_rewrite и перевод _существующего_ сайта в псевдостатику

12
T0
На сайте с 12.08.2004
Offline
38
1838

Я переделал динамические урлы в псевдостатику.


RewriteRule ^category-([0-9]+)\.shtml$ /cgi-bin/new_pricelist.cgi?c=$1
RewriteRule ^product-([0-9]+)\.shtml$ /cgi-bin/show_product.cgi?p=$1

Но в поисковиках остались старые динамические урлы. теперь мне нужно сделать еще и редирект со старого динамического урла на новый статический.

Т.е. в базе поисковиков уже есть страницы вида /cgi-bin/new_pricelist.cgi?c=xx. Мне нужно сделать редирект 301 со страниц /cgi-bin/new_pricelist.cgi?c=xx на /category-xx.shtml

Как это сделать?

BadBoy
На сайте с 31.01.2005
Offline
308
#1

А зачем делать? свои старые линки закройте в robots.txt, поисковики их в скором времени сотрут из своих баз, а новые - статичные, проиндексят и вы в дамках.

В редеректе не вижу смысла. Я таким образом порядка 20 сайтов обработал, и все в полном порядке.

X
На сайте с 05.10.2005
Offline
140
#2

Добавьте после каждой строки [R=301] и будет редирект.

Вопрос о целесообразности остается.

Юр. услуги для ООО,ИП,СМИ,товарные знаки, Лицензии связи (хостинг,SMS), авторское право Оффшоры,merchant account,карты
P2
На сайте с 16.09.2005
Offline
183
#3
xtremest:
Добавьте после каждой строки [R=301] и будет редирект.
Вопрос о целесообразности остается.

Я бы добавил [R=302] - это для поисковиков лучше :)

Lisa
На сайте с 31.01.2002
Offline
438
#4
Мне нужно сделать редирект 301 со страниц /cgi-bin/new_pricelist.cgi?c=xx на /category-xx.shtml

И будет у вас цикл.

Поставьте везде ссылки на новый вариант, можете старый закрыть в роботсе, а наличие этих страниц в базе по одному экземпляру ужаснейшим образом на вас не скажется.

Digital Development (https://ddplanet.ru/)
T0
На сайте с 12.08.2004
Offline
38
#5

если поставить флаг [R=301], то редиректиться будет со страницы /category-xx.shtml на /cgi-bin/new_pricelist.cgi?c=xx. А надо как раз наоборот

Lisa, да, фактически будет цикл. но его можно остановить флагом [L] насколько я понимаю. А по поводу количества страниц в базе, боюсь, что скажется на индексации сайта, ибо пока еще робот склеит все эти дубли...

BadBoy, cпасибо за идею с robots.txt - действительно правильно, я даже не подумал об этом. Пока так сделаю, но все-таки очень интересно как бы это сделать с помощью mod_rewrite. Ведь точно можно как-то реализовать.

BadBoy
На сайте с 31.01.2005
Offline
308
#6
BadBoy, cпасибо за идею с robots.txt - действительно правильно, я даже не подумал об этом. Пока так сделаю, но все-таки очень интересно как бы это сделать с помощью mod_rewrite. Ведь точно можно как-то реализовать.

Лучше через роботс и оставьте, это проверенный вариант который меня не подводил, а попробовать реализовать можно только чисто из технических соображений.

Успехов.

Lisa
На сайте с 31.01.2002
Offline
438
#7
его можно остановить флагом [L] насколько я понимаю.

В какой момент будете останавливать?

У вас есть физический адрес. Его никуда нельзя перенаправлять, а вы именно это и хотите сделать.

T0
На сайте с 12.08.2004
Offline
38
#8
В какой момент будете останавливать?

В момент


RewriteRule ^category-([0-9]+)\.shtml$ /cgi-bin/new_pricelist.cgi?c=$1 [L]
RewriteRule ^product-([0-9]+)\.shtml$ /cgi-bin/show_product.cgi?p=$1 [L]

А редирект поставить до этих строк

У вас есть физический адрес. Его никуда нельзя перенаправлять, а вы именно это и хотите сделать.

Именно это я и хочу сделать. Не понимаю почему его нельзя никуда перенаправлять???

Могу даже сказать, что я имел успешный опыт перенаправления с одного физического адреса на другой физический адрес.

vchesnokov
На сайте с 11.11.2005
Offline
54
#9
Lisa:
Мне нужно сделать редирект 301 со страниц /cgi-bin/new_pricelist.cgi?c=xx на /category-xx.shtml
И будет у вас цикл.
Поставьте везде ссылки на новый вариант, можете старый закрыть в роботсе, а наличие этих страниц в базе по одному экземпляру ужаснейшим образом на вас не скажется.

Именно. Это я и наблюдаю на своём сайте :( Там на страницы вида catalog.php?id=n я сделал псевдостатику cat_n.html, и теперь в поисковиках сидят два вида страниц. Это как минимум замедляет индексацию сайта.

Sorry за простой с виду вопрос - можно получить пример полного кода в .htaccess, как сделать правильный редирект, или как закрыть страницы первого вида в robots.txt?

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

Yours sincerely, Valery V. Chesnokov, косметика (http://www.fl34.ru/), кадровые программы (http://volgacv.fl34.ru/), торговые эксперты и терминалы MetaTrader (http://www.mqlsoft.ru/)
basterr
На сайте с 24.11.2005
Offline
719
#10
vchesnokov:
Sorry за простой с виду вопрос - можно получить пример полного кода в .htaccess, как сделать правильный редирект, или как закрыть страницы первого вида в robots.txt?

тоже очень интересует.

12

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