как сделать такой редирект

12
gormarket
На сайте с 29.12.2010
Offline
47
#11

NBSerG, не вижу здесь строк

RewriteCond %{QUERY_STRING} ^limitstart=0

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

поэтому не знаю куда Вы их вставляли

и еще, строка

RewriteCond %{REQUEST_FILENAME} !-f

срабатывает если запрашиваемый файл не существует

у Вас есть файл

site.ru/sobaka.html

или этот адрес обрабатывается через index.php ?

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
NBSerG
На сайте с 04.09.2010
Offline
134
#12

и в самый низ и после RewriteEngine On

результат 1

кидает на базу

обрабатывается через index.php ?

Изготовление сайтов на Joomla (/ru/forum/726795) Такие деньги можно заработать только здесь!!! (http://goo.gl/k1oTJ) Выиграй Porsche Cayenne! (http://goo.gl/RqHaU)
gormarket
На сайте с 29.12.2010
Offline
47
#13

абсолютно не понимаю, почему

site.ru/sobaka.html

и

site.ru/sobaka.html?limitstart=0

совместно со строками

RewriteCond %{QUERY_STRING} ^limitstart=0

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

дают разный результат,

возможно это делает index.php

остается последнее средство, попытаться сделать гарантированный редирект (исключить влияние остальных правил)

сразу после

RewriteEngine On

вставьте такой код:


RewriteCond %{ENV:REDIRECT_RWR} ^yes$
RewriteRule .* - [L]
RewriteCond %{QUERY_STRING} ^limitstart=0
RewriteRule ^(.*)$ /$1? [R=301,L,E=RWR:yes]

т.е. при редиректе установить переменную RWR и на следующем проходе по .htaccess сразу сделать выход без преобразований при ее наличии

если не поможет, то еще такой вариант четвертой строки (не удаляя первые три)

RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1? [R=301,L,E=RWR:yes]

NBSerG
На сайте с 04.09.2010
Offline
134
#14

прошу не закидывать камнями но я немного налажал...

конструкция

RewriteCond %{QUERY_STRING} ^limitstart=0

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

работает если в самом верху

после

RewriteEngine On

НО только на лайв сервере...

а на денвере выкидывает на http://localhost/denwer/

просто я сначала пробовал на денвере (вариант с в самом низу) давало ошибку попробовал на лайв сервере - тоже ошибка... думал результат одинаков... оказалось расхождение....

Всем огромное спасибо за помощь...

кстати конструкция

RewriteCond %{ENV:REDIRECT_RWR} ^yes$

RewriteRule .* - [L]

RewriteCond %{QUERY_STRING} ^limitstart=0

RewriteRule ^(.*)$ /$1? [R=301,L,E=RWR:yes]

то же работает

12

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