Как избавиться от GET-параметров при редиректе?

Tyrone nginx-forum at nginx.us
Sun Dec 1 16:36:48 UTC 2013


Доброго времени суток!

Перевел сайт на другой движок, теперь нужно проставить редиректы со страниц
вида
/index.php?category_id=102&Itemid=238

к страницам
/catalog/izdelie_takoe_to/

При этом, данные по соответствию страниц есть. Нужно только жестко прописать
сотню правил для редиректа...

Сначала пришло в голову только прописать в .htaccess:
RewriteCond %{QUERY_STRING} ^category_id=102&Itemid=238
RewriteRule ^index\.php\?$ /catalog/izdelie_takoe_to/ [R=301,L]

Редирект работает, однако в строке запроса остается гет-запрос и происходит
перенаправление на /catalog/izdelie_takoe_to/?category_id=102&Itemid=238
Что, на самом деле, не очень устраивает.
Дальше начал копать в сторону аналогичных правил для nginx. Но с помощью
rewrite смог добиться ровно тех же результатов. Редирект есть, но
get-параметры при перенаправлении сохраняются.

Подскажите, как можно, если можно, организовать 301й редирект с
/index.php?category_id=102&Itemid=238 на /catalog/izdelie_takoe_to/,
избавившись от get-параметров?

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,245108,245108#msg-245108



Подробная информация о списке рассылки nginx-ru