Mod_Rewrite:QUERY_STRING不重定向

时间:2013-03-27 11:12:16

标签: apache mod-rewrite

我有以下重写规则:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^manufacturer=&
RewriteRule (.*) $1? [R=410,L]

但它似乎不起作用。我正在尝试使用URL重定向 http://www.example.com/?manufacturer=someonehttp://www.example.com/page.php?manufacturer=someonepage.php

我做错了什么?

编辑: 我在我的站点配置中启用了mod_rewite和AllowOverride All 上面的代码在.htaccess文件中

1 个答案:

答案 0 :(得分:1)

查询字符串^manufacturer=&仅匹配的制造商参数,并且还要求等号后跟一个符号,这似乎不是您想要的行为。< / p>

顺便说一句,您确实意识到status code 410表示资源是 Gone (表示请求的资源不再可用且无法再次使用)?

您似乎想要重定向回当前页面而不查询参数,因此我建议使用302或301重定向。

试试这个:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^manufacturer=.+$
RewriteRule .* $0? [R=301,L]