我需要帮助使用正则表达式将数千个旧 URL 重定向到 410 URL 模式如下:
https://www.example.com/mc-xxyyzz0-12
其中最后三个字符始终是一个数字、一个破折号和最后的另外两个数字。
所有这些 URL 都必须转到 410,我尝试了几种方法,但都无法正常工作。
答案1
要为遵循此 URL 模式的 URL 提供 410 Gone,您可以在文件顶部执行如下操作.htaccess
:
RewriteEngine On
RewriteRule ^[a-z]{2}-xxyyzz\d-\d\d$ - [G]
正如评论中所澄清的,这将匹配形式为的 URL 路径/mc-xxyyzz0-12
。
- 其中前两个字母是任意小写字母
a-z
。 - 后跟连字符 (
-
) 和文字字符串xxyyzz
(仅限小写)。 - 后面跟着一个数字(0-9)、一个连字符和另外两个数字。
如果您特别需要不区分大小写的匹配,则在 . 中包含NC
( nocase
) 标志,RewriteRule
即 . 更改[G]
为[NC,G]
.