我曾经有一个用于处理移动页面的查询字符串。现在网站响应它不需要它,我需要做301重定向让google知道。
所以
http://www.example.com/aaa/bbb?fromMobile=true 应该成为 http://www.example.com/aaa/bbb
和
http://www.example.com/aaa?fromMobile=true 应该成为 http://www.example.com/bbb
和
http://www.example.com?fromMobile=true 应该成为 http://www.example.com
等
我有:
RewriteCond %{QUERY_STRING} ^(?)fromMobile=true$ [NC]
RewriteRule (.*) /$1?%1&%2 [R=301,L]
但这重定向:
http://www.example.com?fromMobile=true 至 http://www.example.com?
如何摆脱拖尾问号?我没有快乐地尝试了很多东西。
答案 0 :(得分:1)
您可以使用:
RewriteCond %{QUERY_STRING} ^fromMobile=true$ [NC]
RewriteRule (.*) /$1? [R=301,L]
这假设除了fromMobile=true
之外没有其他查询参数。
如果还有其他查询参数的可能性,请使用:
RewriteCond %{QUERY_STRING} ^(.+?&)?fromMobile=true(?:&(.*))?$ [NC]
RewriteRule (.*) /$1?%1%2 [R=301,L]