301重定向未按预期工作

时间:2013-03-01 14:46:11

标签: .htaccess redirect

我有一个奇怪的301 Redirect问题。

我正在使用以下规则

Redirect 301   /catalog/index.php?target=news /news 

奇怪的是,当我访问/catalog/index.php?target=news

我被重定向到:/catalog/?target=news

1 个答案:

答案 0 :(得分:0)

查询字符串不是Redirect模式匹配的URI的一部分。它已删除,因此您无法在语句中尝试匹配它。您需要使用mod_rewrite和与%{QUERY_STRING}变量匹配的条件:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^target=news$
RewriteRule ^/?catalog/(index\.php)?$ /news? [L,R=301]

这些规则应该放在文档根目录中的htaccess文件中。