我需要使用 htaccess 重定向几个不同类别中的多个 url。目前的结构是;
.com/category/subcat/product.html?querystring=123
我需要将所有版本的查询字符串 URL 重定向到;
.com/product.html
我不介意为多个类别写几行,但查询字符串有 1000 种变体,无法将它们全部写出来。
有人有想法么??
尝试将此添加到文档根目录中的 htaccess 文件中:
RewriteEngine On
RewriteCond %{QUERY_STRING} (^|&)querystring=123(&|$)
RewriteRule ^category/subcat/product\.html$ /product.html? [L,R=301]
至于变化,如果只是不同的数字 ID 的问题,那么您可以使用:
RewriteCond %{QUERY_STRING} (^|&)jewelry_(metal|carat|colour|clarity)=[0-9]+(&|$)
如果“产品”部分应该是可变的,则将带有规则的行替换为:
RewriteRule ^category/subcat/(.+)\.html$ /$1.html? [L,R=301]
如果 "category" 和 "subcat" 可以是任何东西,那么:
RewriteRule ^[^/]+/[^/]+/(.+)\.html$ /$1.html? [L,R=301]