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

Firebase Hosting根路径报Site not found 仅/index.html可访问

问题原因

访问根路径返回Site not found但/index.html可正常访问,核心原因通常是两点:

  • 配置未显式声明根路径默认索引文件,全量重写规则与Firebase Hosting默认路由逻辑产生优先级冲突
  • 首次部署错误/空内容时,根路径的错误响应被Firebase CDN缓存,新部署后缓存未自动失效
修复步骤

1. 调整firebase.json配置

根据你的站点类型选择对应的配置,核心是显式声明默认首页,避免规则冲突:

纯静态站点(无前端路由)

如果是普通静态页面、不需要前端路由支持,直接删除冗余的重写规则即可,Firebase Hosting默认会自动映射静态路径,显式指定index字段避免默认值异常:

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public": "dist",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "index": "index.html"
  }
}

SPA单页应用(需前端路由支持)

如果是React/Vue等单页应用、需要所有路径指向index.html由前端路由处理,保留重写规则的同时显式声明索引,可开启cleanUrls自动去掉路径中的.html后缀:

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public": "dist",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "index": "index.html",
    "cleanUrls": true,
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

注意:如果你的Firebase项目下创建了多个Hosting站点,需要在hosting配置中额外添加"site": "你的实际站点ID"字段,避免部署到错误站点导致访问异常。

2. 强制刷新CDN缓存重新部署

配置修改完成后,执行带强制缓存刷新参数的部署命令,清除CDN上缓存的旧错误响应:

firebase deploy --only hosting --force

3. 验证结果

部署完成后,使用浏览器无痕模式访问根地址验证即可。如果仍短暂显示错误,等待5-10分钟让全球CDN节点完成配置同步即可,不需要额外调整。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 00:27:19