Apache 301redirect查询stringURL

我想redirect到一个查询string的URL到另一个:

example.com/product-category/search/?filter_grade-level=154 

 example.com/product-category/search/?filter_grade-level=k 

任何想法在.htaccess添加什么?

你需要使用mod_rewrite来检查查询string。 在`.htaccess文件的顶部尝试下面的内容:

 RewriteEngine On RewriteCond %{QUERY_STRING} ^(filter_grade-level)=154$ RewriteRule ^product-category/search/$ /$0?%1=k [R=301,L] 

RewriteRule replace (即RewriteRule /$0?%1=k )中, $0是对整个匹配的RewriteRule 模式的反向引用, %1是对最后匹配的CondPattern中的捕获组的反向引用(即“filter_grade-level”) 。

所以,成功时, /$0?%1=k扩展为:

 /product-category/search/?filter_grade-level=k