如何配置htaccess通配符规则实现任意子文件夹路径重定向
.htaccess 单级任意目录路径重写配置方案
你不需要使用带零宽断言的正则匹配域名部分,Apache mod_rewrite 模块默认针对域名后的路径段做匹配,逻辑更简洁、性能也更好。
可用规则
把下面的代码放在网站根目录的.htaccess文件最顶部,确保在其他重写规则之前:
RewriteEngine On RewriteRule ^[^/]+/final-destination/?$ /final-destination [L,R=301]
规则说明
^[^/]+/对应需求里的anything部分,匹配根目录下任意命名的单级子目录final-destination/?$匹配路径末尾的目标地址,兼容带结尾斜杠、不带结尾斜杠两种访问格式- 标记位说明:
L:匹配到当前规则后立即停止执行后续重写规则,避免规则冲突R=301:标识该跳转为永久重定向,对搜索引擎友好,会传递原有页面权重
扩展场景适配
如果后续需要支持多级任意目录下的final-destination都跳转到根目录对应地址(比如/a/b/c/final-destination也需要跳转),替换成下面的规则即可:
RewriteEngine On RewriteRule ^(.+)/final-destination/?$ /final-destination [L,R=301]
注意:配置生效前请清空浏览器本地缓存,301永久重定向会被浏览器强制缓存,旧缓存会干扰测试结果。
内容的提问来源于stack exchange,提问作者mayersdesign
相关产品推荐
相关产品推荐

