301 RewriteRule 在 OpenLiteSpeed 中完美运行,但只有 95% 的时间

301 RewriteRule works perfect in OpenLiteSpeed, but only 95% of the time

此 Wordpress 安装以前具有 year/mo/day/post-name 的永久链接结构,但后来更改为仅使用 post 名称。这个 301 RewriteRule 被添加到 htaccess 的顶部,它在大多数情况下工作得很好,但在几个链接上仍然失败,将日期值留在 URL.

RewriteRule ([0-9]{4})\/([0-9]{2})\/(.*) domain.com/ [R=301,L]

我无法弄清楚是什么原因造成的,大多数重定向到 domain.com/post-name 正如预期的那样,但有一些返回 域。com/08/post-name 例如。

是否存在被忽略的正则表达式问题?

如果您所有的帖子都是相同的格式,如 /2020/01/01/post-name

然后尝试使用

RewriteRule ([0-9]{4})\/([0-9]{2})\/([0-9]{2})\/(.*) https://example.com/ [R=301,L]

如果您混淆了 URL /2020/01/01/post-name/2020/01/post-name

然后尝试使用

RewriteRule ([0-9]{4})\/([0-9]{2})\/([0-9]{2})\/(.*) https://example.com/ [R=301,L]
RewriteRule ([0-9]{4})\/([0-9]{2})\/(.*) https://example.com/ [R=301,L]