如何在 Firebase 托管上托管单独的 Flutter Web 应用程序和登陆页面?

问题描述 投票:0回答:1

我目前正在开发一个项目,我需要在静态登录页面旁边托管一个 Flutter Web 应用程序,两者都使用 Firebase 托管在同一域下。我的目标结构如下:

着陆页应从

mysite.com/index.html
提供。 Flutter Web 应用程序应该可以通过
mysite.com/game/index.html
访问。 我在配置 Firebase 托管以支持此结构时遇到困难。具体来说,我在两个方面寻求帮助:

目录结构:我应该如何组织 Flutter 项目中的目录结构以正确容纳静态登陆页面和 Flutter Web 应用程序?

Firebase 托管配置:如何配置 firebase.json 文件以正确处理此设置的 URL 重写?我希望确保:

导航至

mysite.com
即可进入登陆页面。 导航到
mysite.com/game
可提供 Flutter Web 应用程序。 如果有人有类似设置的经验或者可以提供适用于此场景的 firebase.json 配置示例,我将非常感谢您的意见。此外,了解在这种情况下组织项目目录的最佳实践也将是有益的。

{
  "hosting": {
    "source": ".",
    "headers": [
      {
        "source": "**/*.@(eot|otf|ttf|ttc|woff|font.css)",
        "headers": [
          {
            "key": "Access-Control-Allow-Origin",
            "value": "*"
          }
        ]
      }
    ],
    "rewrites": [
      {
        "source": "/game/**",
        "destination": "/game/index.html"
      },
      {
        "source": "**",
        "destination": "/index.html"
      }
    ],

}
flutter firebase firebase-hosting
1个回答
0
投票

Firebase 托管不需要为此进行任何特定配置。

只需将 Flutter 构建的输出移动(或直接)到 Firebase 项目目录下的

game
子目录中,然后运行
firebase deploy

© www.soinside.com 2019 - 2024. All rights reserved.