我需要在我的网站上重定向一堆或URL。
我有 http://www.myurl.lt/lt/imone/landstar-lt-lt/?cms_action=manage我需要将其重定向到http://www.myurl.lt/lt/imone/landstar-lt-lt/我有大约700个,所以可以使用一个重定向命令进行重定向吗?
答案 0 :(得分:0)
此规则应删除cms_action
参数,但保留所有其他参数
RewriteCond %{QUERY_STRING} ^(.+?&|)cms_action=[^&]*(?:&(.*)|)$ [NC]
RewriteRule ^ %{REQUEST_URI}?%1%2 [R=301,L]
答案 1 :(得分: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]
答案 2 :(得分:0)
在这种情况下,为什么不直接从管理操作重定向用户,而不是使用对我没有任何意义的重写?这肯定会增加清晰度。如果您使用PHP,例如:
// Inside manage action
header('Location: http://www.myurl.lt/lt/imone/landstar-lt-lt/');