记录一次RankMath SEO 301正则表达式实列过程。

首先我自己其实不太理解正则表达式语法,但是通过chatgpt的梳理基本也能完成设置,chatgpt一开始给的表达式其实是错误的,经过不断调试才可以正常运行。

我的重定向需求:

product-category/a/ 重定向到 /products/a/

product-category/a/b/ 重定向到 /products/a/b/

product-category/a/b/c/ 重定向到 /products/a/b/c/

这是由于我使用页面制作了产品列表页面,但是我后台又对应有分类归档页面,为了避免重复,我需要做对应的301。

正则表达式

Source URL:^product-category/(.+)

Destination URL:/products/$1

Match Type: Regex(必须勾选)
Redirection Type: 301
Status: Enabled ✅

下面是设置截图:

RankMath SEO 301正则表达式实列

为什么这样写?

^product-category/ 匹配以该路径开头的链接

(.+) 表示捕获其后任意不为空的路径(包含多级子路径)

$1 替换为刚才匹配到的部分