Только одна часть URL должна быть перенаправлена ​​на 301

Мне нужно перенаправить на кучу или URL-адреса на моем сайте.

я имею
http://www.myurl.lt/lt/imone/landstar-lt-lt/?cms_action=manage и мне нужно перенаправить его на http://www.myurl.lt/lt/imone/landstar-lt-lt/

У меня их около 700, так можно ли выполнить перенаправление одной командой перенаправления?

0

Решение

Эти правила должны удалить cms_action параметр, но сохранить все остальные параметры

RewriteCond %{QUERY_STRING} ^(.+?&|)cms_action=[^&]*(?:&(.*)|)$ [NC]
RewriteRule ^ %{REQUEST_URI}?%1%2 [R=301,L]
0

Другие решения

Поместите это правило в /it/imone/.htaccess файл:

RewriteEngine On
RewriteBase /it/imone/

RewriteCond %{THE_REQUEST} /([^?]*)\?cms_action=manage [NC]
RewriteRule ^ %1/? [R=301,L]

RewriteCond %{QUERY_STRING} !(^|&)cms_action=manage(&|$) [NC]
RewriteRule ^ %{REQUEST_URI}?cms_action=manage [L,QSA]
0

Вместо того, чтобы использовать Rewrite, которая не имеет никакого смысла для меня в этой ситуации, почему бы вам просто не перенаправить пользователя непосредственно из действия управления? Это определенно добавит ясности. Если вы использовали PHP, например:

// Inside manage action
header('Location: http://www.myurl.lt/lt/imone/landstar-lt-lt/');
0
По вопросам рекламы [email protected]