htaccess 301 redirect - удалить строку запроса (QSA)

Я боролся с некоторыми перенаправлениями htaccess. Я просто потратил некоторое время на чтение и поиск в стеке и не смог получить ответ, который работает с моим сценарием.

Я нахожусь в процессе перенаправления 301 для старого сайта клиента на новый. На старых страницах есть параметры запроса, которые я хочу удалить из URL.

/menu.php?idCategorie=29&idDetail=172

в

/new-website-page/

У меня есть несколько запросов, вот пара примеров:

/menu.php?idCategorie=29&idDetail=172
/menu.php?idCategorie=29&idDetail=182
/menu.php?idCategorie=29&idDetail=184
/menu.php?idCategorie=29&idDetail=256

Которые все ссылаются на разные новые страницы.

Вот что я попробовал:

RewriteCond %{QUERY_STRING} idDetail=172
RewriteRule ^menu.php(.*) /new-page/? [R=301,L]

Я перенаправлен правильно, но URL сохраняет строку запроса:

http://website.com/new-page/?idCategorie=29&idDetail=172

Я также попробовал это:

RewriteRule ^menu.php?idCategorie=29&idDetail=172$ http://website.com/new-page/? [L,R=301]

И это:

RewriteCond %{QUERY_STRING} idDetail=172(.*)$
RewriteRule ^menu.php /new-page-name?$1 [L,R=301]

И это не сработало (все еще есть строка запроса в конце)

Спасибо!

Ответы на вопрос(2)

Ваш ответ на вопрос