Здравствуйте!
Нужно написать редирект для страниц пагинаций двух рубрик. Хочу написать универсальный вариант.
Редирект вида:
/articles/?start=10 => /articles/?page=1
/vse-novosti/?start=10 => /vse-novosti/?page=1
Вот мои правила:
RewriteCond %{REQUEST_URI} ^/(articles|vse-novosti)/$ [NC]
RewriteCond %{QUERY_STRING} start=([0-9])([0-9]) [NC]
RewriteRule .* /%1/?page=%2 [R=301,L] # рассчитываем на /articles/?page=1
Т.е. планировалось получить через первое условие (
%{REQUEST_URI}) раздел, затем через второе (
%{QUERY_STRING}) цифру, а третье игнорировать.
Но в итоге я получаю url:
https://site.ru/1/?page=0. Такое чувство, что результаты обработки регулярки из %{REQUEST_URI} просто затираются результатами из следующей строки - на место %1 попадает первое ([0-9]) из %{QUERY_STRING}.
Подскажите, пожалуйста, как это работает? Почему в %1 лежит результат не из %{REQUEST_URI}, а из %{QUERY_STRING} ? Не хочется дублировать правило для разных разделов