我有一个非常奇怪的问题。
我的WordPress网站使用不同的附加参数获取流量到同一页面。
示例:
mysite.com/page1.html?m=1
mysite.com/page1.html
它是同一页面,但?m = 1 会使WP显示404错误页面。
我尝试了301重定向(在实际的HTACCESS文件中我也使用 http:// 但在这里我不能):
Redirect 301 /page1.html?m=1 mysite.com/page1.html
但这没有做任何事情。
流量来自谷歌,所以我不能改变这个URL结构 - 我必须使用我得到的...所以我如何修复这个???
它可能是WP或HTACCESS问题......我搜索并找不到任何东西 - 我得到M1步枪的结果:(
请帮忙 - 这是一个实时网站
答案 0 :(得分:3)
您无法与mod_alias的Redirect
或RedirectMatch
中的查询字符串进行匹配。您需要使用mod_rewrite的%{QUERY_STRING}
或%{THE_REQUEST}
变量。尝试:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^m=1$
RewriteRule ^(.*)$ /$1? [L,R=301]
这将重定向任何具有" m = 1"的请求。查询字符串并将其删除。
答案 1 :(得分:0)
的.htaccess
RewriteEngine On
RedirectMatch 301 ^/page1.html?m=1$ /page1.html