Задача: сделать редирект со страницы http://site.com/pages?id=1 на страницу http://site.com/page/
Вроде бы ничего сложного, пробуем так:
RewriteRule ^pages?id=1 /page/ [R=301,L]
Проверяем — не работает. Почему? Потому что, если адрес содержит GET-параметр, нужно делать так:
RewriteCond %{QUERY_STRING} ^id=1$
RewriteRule ^/pages$ /page/? [R=301,L]
Проверяем — работает.