如何将index.php?search =重定向到基本网址?我用这段代码试了一下:
redirectMatch 301 ^/index.php?search=(.*) http://www.yoursite.com/
但是如果我进入网站域,那么页面会循环代码..
答案 0 :(得分:1)
mod_alias仅适用于URL path,而不适用于查询:
mod_alias旨在处理简单的URL操作任务。对于更复杂的任务,例如操作查询字符串,请使用mod_rewrite提供的工具。
所以请尝试mod_rewrite:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^search=(.*)
RewriteRule ^/index\.php$ /? [L,R=301]
或者更一般:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^([^&]*&+)*search=([^&]*)
RewriteRule ^/index\.php$ /? [L,R=301]
如果要在根目录中使用此规则的.htaccess文件,请从模式中删除前导斜杠。
答案 1 :(得分:0)
尝试:
RedirectMatch permanent ^/index.php?search=(.*)$ http://www.yoursite.com/