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

Flutter Web部署Firebase后直接访问路由报404,路由导航正常

解决Flutter Web + Beamer部署Firebase后路由直接访问404问题

问题核心是Firebase Hosting默认不会将子路由请求转发给Flutter单页应用,而是尝试查找对应的静态文件,找不到就返回404。以下是修复步骤:

  1. 配置Firebase Hosting路由重写
    在项目根目录的firebase.json文件中添加rewrites规则,将所有请求重定向到index.html,让Beamer处理前端路由:
{
  "hosting": {
    "public": "build/web",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}
  • 确认public字段指向你的Flutter Web构建目录,默认是build/web
  • 如果没有firebase.json,可以通过firebase init hosting命令生成,生成时选择对应的项目并指定构建目录
  1. 重新部署到Firebase
    执行部署命令:
firebase deploy --only hosting

完成后,直接访问子路由或刷新页面时,Firebase会将请求转发到index.html,由Beamer解析路由并渲染对应页面。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 08:31:19