情况:为某些具有相似URL的过时产品创建.htaccess重定向。
问题:较短的SKU与较长的SKU匹配,最终结果是将多个URL重定向到同一页面。
通常很难解释,所以这里有一个例子:
可能的旧/无效网址:
URL的开头还可能包含其他内容,例如“ blue-widget-WIDGET001-BLUE.php”或“ large-widget-WIDGET001-BLUE.html”-这是“ WIDGET001-BLUE”字符串,很重要。
新网址:
问题:“ WIDGET001”触发并将所有3(纯色,红色和蓝色)重定向到同一页面。我需要他们重定向到每个人自己的特定页面。
当前语法:
RewriteRule ^(WIDGET001)$ https://example.com/widgets/widget-001/ [L,NC,R=301]
RewriteRule ^.*(WIDGET-001-BLUE).*$ https://example.com/widget/widget-001-blue/ [L,NC,R=301]
RewriteRule ^.*(WIDGET-001-RED).*$ https://example.com/widget/widget-001-red/ [L,NC,R=301]
所有这3个重定向到https://example.com/widgets/widget-001/。
首先放置第一个(按照它们在htaccess文件中出现的顺序)无效。
我如何让htaccess识别所有3种不同的情况,并将每种情况定向到正确的页面?