所以我遇到了问题,我希望所有来自
的请求https://transfinmedia.com/author?url=akchopra1-A268
要在301上重定向
https://transfinmedia.com/author/akchopra1-A268
但是当我使用
RewriteEngine on
RewriteCond %{QUERY_STRING} url=(.*)
RewriteRule ^author(.*) /author/%1 [L,R=301,NC]
请求
https://transfinmedia.com/author?url=akchopra1-A268被重定向到
https://transfinmedia.com/author/akchopra1-A268?url=akchopra1-A268
我在做什么错,完全出于线索。
答案 0 :(得分:1)
默认情况下,mod-rewrite将旧的QueryString
附加到新的目标URL。要舍弃QueryString,您需要在目标网址的末尾放置一个?
(一个空的问号)。
RewriteEngine on
RewriteCond %{QUERY_STRING} url=(.*)
RewriteRule ^author(.*) /author/%1? [L,R=301,NC]
在使用此功能之前,请确保清除浏览器缓存。
答案 1 :(得分:0)