我有以下重写规则:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^manufacturer=&
RewriteRule (.*) $1? [R=410,L]
但它似乎不起作用。我正在尝试使用URL重定向
http://www.example.com/?manufacturer=someone
至http://www.example.com/
和page.php?manufacturer=someone
至page.php
我做错了什么?
编辑: 我在我的站点配置中启用了mod_rewite和AllowOverride All 上面的代码在.htaccess文件中
答案 0 :(得分:1)
查询字符串^manufacturer=&
仅匹配空的制造商参数,并且还要求等号后跟一个符号,这似乎不是您想要的行为。< / p>
顺便说一句,您确实意识到status code 410表示资源是 Gone (表示请求的资源不再可用且无法再次使用)?
您似乎想要重定向回当前页面而不查询参数,因此我建议使用302或301重定向。
试试这个:
RewriteEngine on
RewriteCond %{QUERY_STRING} ^manufacturer=.+$
RewriteRule .* $0? [R=301,L]