Правило для htaccess

12
Z
На сайте с 30.08.2011
Offline
52
974

нужно сделать редирект

http://sait.ru/?do=register

на

http://sait.ru/register/

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

DI
На сайте с 03.01.2007
Offline
123
#1

Напиши как пробовал.

Высказывание идиотского утверждения требует на порядок меньше усилий, чем его последовательное и обоснованное опровержение и более того, иногда это опровержение вообще невозможно. © (http://zhurnal.lib.ru/s/shapiro_m_a/raspidiota.shtml)
Z
На сайте с 30.08.2011
Offline
52
#2

Redirect 301 \?do=register http://citytula.ru/register/

Redirect 301 http://citytula\.ru/\?do=register http://citytula.ru/register/

RedirectMatch /?do=register$ /$register/

Redirect 301 http:\/\/citytula\.ru/\?do=register http:\/\/citytula.\ru\/register/

RewriteRule ..... [R=301]

и т.п.. штук 20-30 вариантов все что нашел... дохлый номер(

DI
На сайте с 03.01.2007
Offline
123
#3

RewriteCond %{QUERY_STRING} do=register [NC]

RewriteRule ^(.*)$ /register/? [R=301,L]

S
На сайте с 28.10.2005
Offline
318
#4

htaccess вообще работает на хостинге?

DI
На сайте с 03.01.2007
Offline
123
#5

Если параметр do=register встречается где-то еще в подразделах, а его редиректить не требуется, то нужно добавить условие:

RewriteCond %{REQUEST_URI} ^/$ [NC]

RewriteCond %{QUERY_STRING} do=register [NC]

RewriteRule ^(.*)$ /register/? [R=301,L]

Z
На сайте с 30.08.2011
Offline
52
#6

хмм. а как сделать редирект чтоб везде где есть переменная do, шел редирект на гравную сайта. я просто хочу избавиться от дублей

zLazy добавил 17.09.2011 в 20:45

semenov:
htaccess вообще работает на хостинге?

да конечно

DI
На сайте с 03.01.2007
Offline
123
#7
хмм. а как сделать редирект чтоб везде где есть переменная do, шел редирект на гравную сайта. я просто хочу избавиться от дублей

<ifModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{QUERY_STRING} ^do= [NC]

RewriteRule ^(.*)$ /? [R=301,L]

</ifModule>

А вообще, вот, тут всё подробно достаточно описано.

S
На сайте с 28.10.2005
Offline
318
#8

zLazy, тоды должно работать 100%, в самое начало поставьте:

Redirect 301 /?do=register http://citytula.ru/register/

BD
На сайте с 28.06.2010
Offline
19
#9

RewriteRule ^register/$ index.php?do=register [L]
Z
На сайте с 30.08.2011
Offline
52
#10
semenov:
zLazy, тоды должно работать 100%, в самое начало поставьте:

Redirect 301 /?do=register http://citytula.ru/register/

не работает

zLazy добавил 17.09.2011 в 21:22

BS0D:
RewriteRule ^register/$ index.php?do=register [L]

и в итоге у меня получился дубль. есть /register и ?do=register, а index.php уже не существует я его запретил в .htaccess сделал переадресацию на sait.ru/ но теперь все переменные начали вылетать в формате ?do=service

12

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