You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用.htaccess实现无路径保留重定向?将子文件夹及内部页面跳转至根目录

解决.htaccess将/subfolder及其子路径重定向到根目录的问题

没问题,我来帮你搞定这个重定向需求!你要的是把/subfolder以及它下面所有层级的页面都直接跳转到网站根目录,而不是映射到根目录的对应路径对吧?这可以通过Apache的mod_rewrite规则轻松实现。

核心重写规则

把这段代码放到你网站根目录的.htaccess文件里(注意不是/subfolder子目录里的那个):

RewriteEngine On

# 永久重定向/subfolder及其所有子路径到根目录
RewriteRule ^subfolder(/.*)?$ / [L,R=301]

规则细节解释

让我拆解一下每个部分的作用,方便你理解:

  • RewriteEngine On:必须开启重写引擎,否则所有Rewrite规则都不会生效。
  • ^subfolder(/.*)?$:这是正则匹配规则:
    • ^ 表示匹配URL的开头
    • subfolder 就是你要定向的目标子文件夹名称
    • (/.*)? 表示匹配subfolder后面的任意内容(包括空,也就是/subfolder本身),?表示这部分是可选的
    • $ 表示匹配URL的结尾
  • /:这是重定向的目标路径,也就是网站的根目录
  • L:标记为「Last」,意思是处理完这条规则就停止,不会再执行后续的重写规则,避免冲突
  • R=301:表示这是永久重定向(适合SEO场景),如果只是临时需要,可以改成R=302(临时重定向)

效果验证

设置好之后,所有符合条件的请求都会直接跳转到根目录:

  • 访问https://yourdomain.com/subfolder → 跳转至https://yourdomain.com/
  • 访问https://yourdomain.com/subfolder/another-folder → 跳转至https://yourdomain.com/
  • 访问https://yourdomain.com/subfolder/page.html → 跳转至https://yourdomain.com/

注意事项

  1. 确保你的Apache服务器已经启用了mod_rewrite模块(大多数主机默认开启,如果没开可以联系主机服务商或者自行配置)
  2. 如果你的.htaccess里已经有其他重写规则,把这条规则放在最前面,避免被其他规则覆盖导致失效
  3. 测试的时候可以用浏览器开发者工具的「网络」面板,查看请求的状态码是否为301,确认重定向目标正确

内容的提问来源于stack exchange,提问作者TASan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:57:36