我尝试过使用以下各项
Redirect 301 /example http://website.com/new-page
RedirectMatch 301 /example(.*) /new-page/$1
RewriteRule ^example/(.*)$ http://website.com/new-page$1 [R=301,L]
在每种情况下,最终网址都解析为“website.com//new-page //?q = / example /”
请注意,它正在向最终网址添加/?q=/example/
。
答案 0 :(得分:0)
这可能是由于.htaccess中的其他规则造成的。使用此规则从THE_REQUEST
变量中捕获原始字符串。并在最后添加?
以去除查询字符串。
RewriteEngine On
RewriteCond %{THE_REQUEST} \s/+example(\S*)\s [NC[
RewriteRule ^ http://website.com/new-page/%1? [R=301,L,NE]