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

Angular5/Firebase部署后子页面无法访问问题求助

解决Angular5/Firebase部署后子页面404的问题

嘿,我之前部署Angular+Firebase的时候也踩过一模一样的坑!问题核心在于Angular是单页应用(SPA),你的子页面都是前端路由,并没有对应的物理文件存在于dist目录里。Firebase Hosting默认会在找不到对应文件时返回404,所以得配置路由重写规则,让所有请求都指向index.html,交给Angular的路由系统来处理。

修改你的firebase.json配置

你需要在hosting节点里添加rewrites规则,修改后的完整配置如下:

{
  "database": { "rules": "database.rules.json" },
  "firestore": { "rules": "firestore.rules", "indexes": "firestore.indexes.json" },
  "hosting": {
    "public": "dist",
    "ignore": [ "firebase.json", "**/.*", "**/node_modules/**" ],
    "rewrites": [ {
      "source": "**",
      "destination": "/index.html"
    } ]
  },
  "storage": { "rules": "storage.rules" },
  "functions": {
    "predeploy": [ "npm --prefix \"$RESOURCE_DIR\" run lint", "npm --prefix \"$RESOURCE_DIR\" run build" ]
  }
}

重新部署生效

保存修改后的firebase.json,在终端运行部署命令:

firebase deploy

等部署完成后,所有子页面的路由请求都会被Firebase转发到Angular的index.html,Angular的路由系统就能正确识别并加载对应的页面,不会再出现404错误啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:46:44