如何通过.htaccess将所有以-text/结尾的URL重定向到无该后缀的地址
实现URL末尾-text/重定向的.htaccess配置方案
前置要求
- 确保Apache服务器已开启
mod_rewrite扩展模块 - 站点对应目录的
AllowOverride配置已设置为All,允许.htaccess文件生效
具体配置
在站点根目录的.htaccess文件中添加如下规则:
RewriteEngine On RewriteRule ^(.*)-text/$ /$1/ [L,R=301]
规则说明
- 匹配规则
^(.*)-text/$会捕获URL中-text/之前的所有内容,同时限定只有以-text/结尾的URL才会命中该规则 - 替换目标
/$1/会将捕获到的内容拼接成移除-text后的新路径 - 参数
L表示命中规则后不再执行后续的重写逻辑 - 参数
R=301表示返回301永久重定向状态码,若仅做临时测试可改为R=302,避免浏览器缓存旧规则导致后续调整不生效
效果验证
配置生效后:
- 访问
https://www.example.com/example-text/会自动重定向到https://www.example.com/example/ - 多级路径场景同样生效,比如
https://www.example.com/category/article-text/会重定向到https://www.example.com/category/article/
提示:如果你的.htaccess文件中已经存在
RewriteEngine On配置,无需重复添加该行,直接在现有重写规则的最上方新增上述重写规则即可。
内容的提问来源于stack exchange,提问作者Babbas
相关产品推荐
相关产品推荐

