301使用RegEx重定向

时间:2016-01-20 21:09:42

标签: regex .htaccess

我对RegEx不太满意。我有一个电子商务网站从PD商店转移到Woocommerce。我需要为旧网站上的页面写301,以重定向到新网站上的相应页面。问题是网站A的网址结构与网站B的网址结构完全不同。我不想手动操作数千种产品,而是想使用RegEx,但我甚至不确定是否可以完成。< / p>

如果有人对如何解决此问题有任何见解,我真的很感激帮助。我不想一次只做一个链接,但我不知道如何。

旧链接的结构如下:

www.domain.com/shop/item.aspx/item-name/id /

示例:

www.domain.com/shop/item.aspx/sierra-saw/58 /

www.domain.com/shop/item.aspx/duffle-bag-double-strap-olive/2206 /

www.domain.com/shop/item.aspx/duffle-bag-side-zipper-black/2207 /

新链接的结构如下:

www.domain.com/product/item-name /

示例:

www.domain.com/product/sierra-saw /

www.domain.com/product/double-strap-duffle-bag /

www.domain.com/product/double-strap-duffle-bag /

1 个答案:

答案 0 :(得分:0)

您应该匹配www.domain.com/shop/item.aspx/([^/]+)/.*并将其替换为www.domain.com/product/\1/

匹配模式匹配从公共根(www.domain.com/shop/item.aspx/)开始的url,将它们的下一个路径片段(一切到下一个斜线)分组并匹配该行的其余部分。

替换片段只重复新公共根旁边的分组路径片段。