首页 > 解决方案 > Firebase 中的多个站点部署问题

问题描述

我有一个名为“my-app”的 Angular Web 应用程序。我在 Google Firebase 上创建了一个项目,并将其命名为“my-app”。我将 Angular 应用程序部署到 Firebase 项目“my-app”。结果,出现了一个站点“my-app-*****”。我的应用程序可以在“my-app-*****.web.app”地址访问。

然后我在同一项目的托管中创建了第二个站点。我称它为“我的应用开发”。它有一个地址,但由于尚未部署任何内容,因此为空。我按照谷歌的指示:https ://firebase.google.com/docs/hosting/multisites 甚至 StackOverflow 上的一个问题:Firebase 托管部署到其他站点 我添加了目标并修改了 firebase.json。结果,他们看起来像这样:

firebase.json文件内容:

  "hosting": [
    {
      "target": "prod",
      "public": "www",
      "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
      "rewrites": [
        {
          "source": "**",
          "destination": "/index.html"
        }
      ]
    },
    {
      "target": "dev",
      "public": "www",
      "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
      "rewrites": [
        {
          "source": "**",
          "destination": "/index.html"
        }
      ]
    }
  ]
}

.firebaserc文件内容:

{
  "projects": {
    "default": "my-app-*****"
  },
  "targets": {
    "my-app-*****": {
      "hosting": {
        "dev": [
          "my-app-dev"
        ],
        "prod": [
          "my-app-*****"
        ]
      }
    }
  }
}

但是我在执行命令时遇到了错误firebase deploy --only hosting:dev 但是,当我执行命令时firebase deploy --only hosting:prod,一切都部署没有错误。

结果,我能够将我的项目部署到“my-app-*****”站点,但我无法将我的项目部署到“my-app-dev”站点。我希望两个站点都使用相同的构建文件,这就是为什么“public”指向同一个目录“www”。这两个站点位于 Google Firebase 上“my-app”项目的同一托管中。

有人可以帮助我并解释我做错了什么吗?

标签: firebaseweb-deploymentfirebase-hosting

解决方案


推荐阅读