将OpenLiteSpeed的RedirectMatch更改为RewriteRule

问题描述

更改Wordpress永久链接结构后,我在.htaccess文件中使用RewriteMatch为所有页面创建301重定向。

RedirectMatch 301 ^/([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/)(.+)$ https://mywebsite.com/$4

我最近切换到OpenLiteSpeed,发现它不再起作用。有人确认OLS忽略了RedirectMatch规则,并建议切换到RewriteRule,因此我使用了htaccess tester tool并将以下内容放在一起。

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(?!page/) $4 [QSA,L]

我在编写规则方面经验不足,但是该工具显示了正确的输出。但是,将其添加到我的.htaccess文件后,它仍然无法正常工作。我已经重新启动OLS,但是没有任何更改。

我正在尝试确定规则是否存在问题(即与litespeed不兼容),或者是否与OLS Web服务器有关?

解决方法

请尝试将此规则添加到您的.htaccess顶部

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

添加OLS后重新启动。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...