You need to enable JavaScript to run this app. htaccess配置:实现根域名与index.php重定向至/newhp的方法
优惠活动
大模型
产品
解决方案
定价
更多

htaccess配置:实现根域名与index.php重定向至/newhp的方法

.htaccess 指定路径重定向配置方案

前置准备

  • 确认待修改的.htaccess文件位于网站根目录(和待跳转的newhp文件夹、index.php文件处于同一层级)
  • 确认Apache已正常启用mod_rewrite模块,未开启该模块的场景下所有重写规则都不会生效

完整可直接复用的配置规则

将以下规则添加到.htaccess文件的最顶部位置,即可同时满足两个重定向需求:

# 强制开启重写引擎,必须放在所有重写类规则的最前方
RewriteEngine On

# 匹配根域名访问场景(如example.com / example.com/),301永久重定向到/newhp
RewriteRule ^$ /newhp [R=301,L]

# 匹配根目录下index.php的直接访问场景,301永久重定向到/newhp
RewriteRule ^index\.php$ /newhp [R=301,L]

临时调试场景可将规则内的R=301替换为R=302,避免浏览器强缓存带来的调试阻碍

之前尝试方案失效的核心原因

  • 第一类测试方案仅添加RewriteRule ^$ /newhp [L]缺少R跳转标记,本质是服务器内部内容转发,不会触发浏览器层面的地址跳转,和常规预期的重定向效果不一致,还容易和现有根目录默认页配置产生冲突
  • 第二类测试方案RedirectMatch ^/$ /newhp属于mod_alias模块规则,存在两个明显缺陷:一是规则仅能匹配根路径的访问,无法覆盖index.php的跳转需求;二是如果现有.htaccess内存在同路径的拦截规则,会因规则加载顺序优先执行旧逻辑,导致新规则被覆盖不生效

生效排查注意事项

  • 如果添加规则后仍未跳转,检查现有.htaccess内是否存在针对根路径、index.php的已有重写逻辑,将这些旧规则调整到新加的两条规则的下方,避免新规则被提前拦截
  • 重定向规则内统一使用站点相对路径(如/newhp),不要拼接完整域名写死跳转地址,避免触发跨域跳转错误
  • 本地测试前先清空浏览器缓存,301永久重定向会被浏览器长期强缓存,之前测试产生的错误跳转状态未清除时,会一直无法加载新规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.29 02:45:04