我有许多URL,这些URL包含与产品数据,排序和过滤相关的查询字符串(以便它们在查询字符串中具有多个参数),我需要重写或重定向到静态URL。
例如,https://example.com/afteraloss/cremation-merchandise/product-category/cremation-urns/metal/page/2/?product_count=24&product_sort=desc&product_order=date必须为https://example.com/afteraloss/cremation-merchandise/cremation-urns/metal,实际上是删除“ / page”之后的所有内容,
我在htaccess中添加了一些重写规则,并认为它们已经在起作用,但是它们似乎并没有按要求进行重定向。
我的htaccess文件中包含以下内容:
RewriteCond %{QUERY_STRING} (^|&)product_count=([0-9]*)$
RewriteCond %{QUERY_STRING} (^|&)product_order=date($|&)
RewriteCond %{QUERY_STRING} (^|&)product_order=title($|&)
RewriteCond %{QUERY_STRING} (^|&)product_order=price($|&)
RewriteCond %{QUERY_STRING} (^|&)product_order=popularity($|&)
RewriteCond %{QUERY_STRING} (^|&)product_sort=desc($|&)
RewriteCond %{QUERY_STRING} (^|&)product_sort=asc($|&)
RewriteRule ^afteraloss\/cremation\-merchandise\/product\-
category\/cremation\-urns\/metal\/(.*)/$ /afteraloss/cremation-
merchandise/cremation-urns/metal/? [L,R=301]
有什么建议可以解决这个问题?我猜这是我如何组合查询字符串(因为并非所有URL都具有所有参数)或如何指定重写规则。