我想将此类型的网址重定向到我的主页
http://www.mywebsite.com/index.php?showuser=
到
http://www.mywebsite.com/
我可以用.htaccess这样做吗?怎么做。我试过这个,但什么也没做。
redirectMatch 301 /index.php?showuser= http://www.mywebsite.com
和
RedirectMatch 301 /index.php\?showuser\= http://www.mywebsite.com
答案 0 :(得分:0)
您无法与RedirectMatch
正则表达式中的查询字符串进行匹配。您需要使用mod_rewrite和%{QUERY_STRING}
变量:
RewriteEngine On
RewriteCond %{QUERY_STRING} ^showuser=
RewriteRule ^index\.php$ /? [L,R=301]
答案 1 :(得分:0)
Redirect
或RedirectMatch
都不能与查询字符串匹配。 ?
中的RedirectMatch
实际上意味着"前一个字符0或1次",并且将与" index.php"匹配。请注意,您也没有正确使用点。
您可以使用mod_rewrite解决此问题。确保它已启用,并且您允许覆盖FileInfo。然后使用以下指令:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^showuser=$
RewriteRule ^index\.php$ / [R,L]
如果您希望在测试一切按预期工作后将重定向设为永久性,请将[R]
更改为[R=301]
。