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

如何实现整站域名重定向至子文件夹,仅排除/与/index.html?

解决方案

调整mod_rewrite规则,先强制HTTPS跳转,再排除需要保留的根路径和index.html,将其余请求重定向到目标文件夹:

<IfModule mod_rewrite.c>
RewriteEngine On

# 将所有HTTP请求强制跳转到HTTPS
RewriteCond %{HTTPS} !=on [NC]
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

# 排除根路径(/)和index.html,其余请求重定向到/folder/
RewriteCond %{REQUEST_URI} !^/$
RewriteCond %{REQUEST_URI} !^/index\.html$
RewriteRule ^(.*)$ /folder/$1 [R=301,L]
</IfModule>

规则说明

  • HTTPS跳转:优先处理HTTP转HTTPS,R=301是永久重定向标记,L表示执行完这条规则后终止后续规则,避免冲突。
  • 排除逻辑:通过RewriteCond的!符号,指定不处理根路径和index.html请求,确保这两个路径保持原样。
  • 重定向规则:把除上述例外之外的所有请求,重定向到/folder/目录下,$1会保留原请求的路径部分,保证子页面也能正确跳转。

如果不需要地址栏显示/folder路径(内部重写而非外部跳转),可以去掉R=301,仅保留L标记。

内容的提问来源于stack exchange,提问作者k-Dushi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 13:34:52