Mod rewrite

12
MoneyLover
На сайте с 18.09.2006
Offline
52
847

Перекопал пол форума, но решения не подходят.

Требуется сделать редирект 301

www.site.ru/index.php?showtopic=* -> www.site.ru

www.site.ru/lofiversion/* -> www.site.ru/archive

www.site.ru/index.php?act* -> www.site.ru

на данный момент в htaccess прописано

RewriteRule ^((urllist|sitemap).*\.(xml|txt)(\.gz)?)$ vbseo_sitemap/vbseo_getsitemap.php?sitemap=$1 [L]

Первому предложившему рабочее решение закину бонус в пару баксов :)

Спасибо!

A
На сайте с 04.03.2011
Offline
20
#1

что-нить типа

RewriteCond %{QUERY_STRING} ^showtopic=

RewriteRule /index.php http://www.site.ru [R=301,L]

RewriteCond %{QUERY_STRING} ^act

RewriteRule /index.php http://www.site.ru [R=301,L]

RewriteRule /lofiversion/ http://www.site.ru/archive [R=301,L]

MoneyLover
На сайте с 18.09.2006
Offline
52
#2

Не работает.

Под символом "*" имелось ввиду - различные произвольные символы в т.ч. цифры,"#", "?", "=", "%" и т.п.

siv1987
На сайте с 02.04.2009
Offline
427
#3

RewriteRule /index.php

заменить на

RewriteRule index.php

A
На сайте с 04.03.2011
Offline
20
#4
siv1987:
RewriteRule /index.php

заменить на
RewriteRule index.php

тогда на ^index.php :)

MoneyLover
На сайте с 18.09.2006
Offline
52
#5

C lofiversion заработало, но как сделать, что бы если сайт набирается с www, то редирект был тоже с www и соответственно если без, то редиректило без www.

Если захожу на www.site.com/index.php?showtopic= то перебрасывает соответвенно на www.site.com/?showtopic=

И так же проблема с www.

A
На сайте с 04.03.2011
Offline
20
#6

зачем Вам дубли плодить?

MoneyLover
На сайте с 18.09.2006
Offline
52
#7

Это форум и разные юзеры используют различные адреса - кто-то с "ввв", а кто-то без.

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

A
На сайте с 04.03.2011
Offline
20
#8

ну попробуйте тогда %{HTTP_HOST} вместо www.site.ru в rewriterule написать

gormarket
На сайте с 29.12.2010
Offline
47
#9

Используйте вместо "www.site.ru" переменную "%{HTTP_HOST}", тогда как кто зашел, так его и переадресует (с www или без)

А чтоб при редиректе исчезло все что после "?", нужно в конце строки адреса для редиректа добавить "?"


RewriteCond %{QUERY_STRING} (^showtopic=|^act)
RewriteRule ^index.php http://%{HTTP_HOST}/? [R=301,L]

RewriteRule ^lofiversion/ http://%{HTTP_HOST}/archive [R=301,L]
Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
MoneyLover
На сайте с 18.09.2006
Offline
52
#10

gormarket, отлично. Огромное спасибо! Кошелек Ваш ? :)

12

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