Просьба помочь с 301 в htaccess

Если постранично делать то лучше так
RedirectMatch 301 ^index.php?categoryID=11 http:// сайт . ру/category/dreli/
 
почему-то не срабатывает, открывается прежняя страница, без пере направления (
 
Redirect и RediretMatch это директивы mod_alias.

site.ru/path?query

mod_alias позволяет сравнивать с шаблоном поиска только /path т.е. все что после знака вопроса возможности проверить нету.
Зато такая возможность есть в mod_rewrite. Шаблон поиска RewriteRule сравнивется только с path т.е. начальный слеш там отсутствует.
Все что находилось в адресе после знака вопроса можно найти в переменной %{QUERY_STRING}. Проверить её содержимое можно с помощью директивы RewriteCond.
Код:
RewriteCond %{QUERY_STRING} =categoryID=11
RewriteRule ^index.php$ http://site.ru/category/dreli/? [L,R=301]
 
были
категории - index.php?categoryID=11
товары - index.php?productID=105
будет:
категория - /category/dreli/
товар - /otvertka/

Код:
RewriteEngine on
RewriteBase /

RewriteCond %{QUERY_STRING} categoryID=11
RewriteRule .* http://site.ru/category/dreli/? [R=301,L]
RewriteCond %{QUERY_STRING} productID=105
RewriteRule .* http://site.ru/otvertka/? [R=301,L]

Если присутствуют другие правила в файле - желательно эти ставить повыше, например сразу за удалением зеркал www/non-www...
 
Вроде работают оба варианта, между ними есть принципиальная разница, для пс?

Если присутствуют другие правила в файле - желательно эти ставить повыше, например сразу за удалением зеркал www/non-www...
Вроде, пока не планирую добавлять доп. правила, а есть разница в "высоте" между категориями, товарами и инфо страницами?
 
Вроде работают оба варианта, между ними есть принципиальная разница, для пс?
Вопроса не понял, видать адресовано не мне...
Вроде, пока не планирую добавлять доп. правила, а есть разница в "высоте" между категориями, товарами и инфо страницами?
Всё зависит от архитектуры старых урлов... В некоторых случаях влиять будет (если есть другие обработчики урла).
К примеру если на старом сайте нету урлов вида /index.php?categoryID=11&sort=asc&price=low то все будет нормально не зависимо от размещения правил.
Или есть урл вида /index.php?categoryID=11&productID=12 - тогда могут возникнуть некоторые неприятные моменты. Я не знаком с этой CMS - не знаю архитектуру урлов...
 
Назад
Сверху