8

注意:我是编码新手。

我有一个 Divshot 应用程序,现在我必须迁移到 Firebase。它包含两个 HTML 文件、一个样式表和一个本地 jpg 文件。没有 JavaScript。这是超级基本的。我知道。

我已经按照 CLI 的指示完成了 Firebase 的教程。(不确定我为什么要构建一个随机聊天应用程序。)我还尝试了 --help 命令及其建议。

“firebase.json”文件已在我的应用程序目录中创建,标记为“public”的文件夹也已创建。我将 html 文档、样式表和 jpg 移动到“public”文件夹中,因为 CLI 告诉我必须在 public 目录中至少有一个文件。它应该是一个zip文件吗?

然后我又试了一次,被告知

“公共目录不包含 index.html”

即使确实如此。

我还在每个 html 文档的标题中添加了 firebase 脚本。不确定这是否正确。

我的应用程序都是静态的,对吗?我只希望我的 firebase URL 使用样式表中的样式规则显示我的 HTML 页面的内容。我该怎么做/我错过了什么?

我得到了一些错误,按顺序:

错误:公共目录中必须至少有一个文件才能部署。

(将文件移动到“公共”目录)

错误:不在 Firebase 应用目录中(找不到 firebase.json)

(我知道为什么,因为它在那里)

错误:指定的公共目录不存在,无法部署托管

(这样的谎言)

4

10 回答 10

8

对我来说,当我想部署时遇到同样的问题有这个错误:

Error: Specified public directory does not exist, can't deploy hosting  

我在 firebase 项目根目录的终端中运行此代码:

纱线构建

有用!

于 2017-12-13T09:52:56.160 回答
6

我通过将 firebase.json 文件的公共目录更新为“/”解决了这个问题

托管:{公共:“/”...

我必须确保 firebase.json 文件与其他文件位于同一位置(index.html. ...)

于 2018-08-10T19:28:16.190 回答
5

公共目录不是您所在的当前目录,而是您在
What do you want to use as your public directory?
使用当前目录完成初始化后询问时指定的firebase init 目录应该包含两个文件firebase.json.firebaserc和一个文件夹,该文件夹是您的索引所在的公共目录.html 文件应该是.only 然后你可以部署你的网站firebase deploy
如果满足上述所有条件并且您的当前目录不是公共目录,请从控制台共享您的调试日志。

于 2016-06-08T14:34:13.723 回答
2

我有同样的问题(角度)并通过再次运行npm run-script build解决firebase deploy

于 2019-12-01T20:25:01.140 回答
1

在 firebase.json我了一个(角度)“dist/”

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

于 2018-08-15T11:25:58.347 回答
0

我遇到了同样的问题,但我通过在 src 文件夹中创建另一个名为“dist”的临时文件夹解决了这个问题,并复制了原始 dist 文件夹中的所有文件并运行了“firebase deploy”,它成功了!然后我在部署后删除了临时文件夹“dist”。

于 2017-12-21T11:41:30.673 回答
0

Means it cannot find a folder named "public". I moved the firebase.json & .firebaserc file up a folder and ran the deploy from there. Also changed the "public" element in the .json file to my project folder name.

于 2018-02-10T22:47:37.240 回答
0

尝试ng build --prod,然后firebase deploy

如果您使用的是 Github-auto-deploy:放入 "public": "dist/X",您的 firebase.json 其中 X=您的项目名称

于 2021-04-03T16:27:55.230 回答
0

我通过将 firebase.json 文件的公共目录更新为“/”解决了这个问题

托管:{公共:“/”...

是的,它成功了!

于 2021-10-28T21:24:30.633 回答
0

为了消除 Firebase 托管部署错误(如果您正在更新现有托管站点),您可以再次处理 1] firebase login 2] firebase init 3]firebase deploy

确保您当前的文件夹有两个东西:公共文件夹(其中包含所有网站文件,如 css 图像等,包括 index.html)和 firebase.json 文件

于 2018-12-13T14:55:06.823 回答