firebase 部署后“发生意外错误”
Posted
技术标签:
【中文标题】firebase 部署后“发生意外错误”【英文标题】:"An unexpected error has occurred" after firebase deploy 【发布时间】:2017-07-17 11:02:21 【问题描述】:当我通过 firebase 托管托管我的网页时,在编写命令 firebase deploy
后,我收到以下错误:
【问题讨论】:
我建议您联系 Firebase support 并在您的消息中包含firebase deploy --debug
的输出。
按照本教程逐步操作或观看此博客上的 youtube 视频。你会明白一切。 codingaffairs.blogspot.com/2017/06/…
查看以下解决方案https://***.com/questions/50360477/angular-6-0-firebase-hosting-deploy-not-working/51809723#51809723
npm install -g npm@latest
【参考方案1】:
对我来说,更新 firebase-tools 解决了这个问题
在你的 cmd 提示符下运行以下命令
npm install -g firebase-tools
然后再次尝试 firebase init
【讨论】:
【参考方案2】:如果您仍然使用 firebase serve
在 localhost 上为您的站点提供服务,则可能会导致问题。关闭它然后尝试部署。为我工作。
【讨论】:
这个对我有帮助【参考方案3】:首先,查看项目根目录中的firebase-debug.log
(firebase.json 旁边)可能有助于定义错误。在我的情况下,出现 “无法读取未定义的属性‘部署’” 错误。有一个关联的issue on github。删除额外的站点(我实际上并不需要它们)并在 Firebase 托管仪表板中仅保留默认站点解决了我的问题。
【讨论】:
【参考方案4】:输入exit并回车关闭IDE的集成终端,然后重新打开它并输入命令firebase deploy
如果上述选项不起作用,那么只需使用 linux/mac 中的终端和 windows 中的 CMD 并导航到该文件夹,然后给出firebase deploy
命令
【讨论】:
【参考方案5】:就我而言,解决方法:
firebase deploy --except functions
【讨论】:
虽然这适用于构建您正在使用的任何其他 Firebase 服务,但它不包括功能服务......如果您的环境中的问题是 Firebase 功能,这有点像把罐子踢下去.【参考方案6】:下面的代码解决了我的问题。
将以下代码添加到 firebase.json。
"hosting":
"public": "./",
"ignore": [
"firebase.json",
"database-rules.json",
"storage.rules",
"functions"
],
"headers": [
"source" : "**/*.@(js|html)",
"headers" : [
"key" : "Cache-Control",
"value" : "max-age=0"
]
]
【讨论】:
这对我有用,我遇到了错误:“firebase 数据库已被数据库所有者功能禁用” 不要简单地将其复制并粘贴到您的 firebase.json 中 什么鬼!!这只是忽略了所有主要服务,如函数和数据库。如果您正在使用函数或数据库,请不要使用它【参考方案7】:通过在终端中运行 firebase login
确保您已登录。
【讨论】:
未登录的“意外错误”似乎是个糟糕的笑话:D 感谢您的回答。【参考方案8】:我过去使用 Firebase 函数,我放弃了这个想法并在 node.js 中创建了我想要的东西。
因此,如果您不使用 firebase 函数,请删除 firebase.json 文件中的以下内容
"functions":
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint"
]
【讨论】:
谢谢@MichaelNorris 它拯救了我的一天【参考方案9】:对我来说我尝试了很多,然后我发现 firebase.json 仍然有功能, 我删除了它并且它有效 顺便说一句,我正在使用
firebase deploy --except functions
firebase deploy --only hosting
这没有帮助 所以也许删除你不需要的那些
*"functions":
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
,*
"hosting":
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
【讨论】:
【参考方案10】:是的,我遇到过这个问题..
这是因为我使用的节点版本是Node v.8.0.0
我只是将其降级为Node v.16.0.3
,然后我的部署就完成了:)
【讨论】:
【参考方案11】:这可能是由于 npm 和节点版本 对于 mac os,您可以使用以下命令更新 npm:
npm install -g npm@latest
并通过链接https://nodejs.org/en/ 并下载安装程序直接更新节点。 并运行
npm install -g firebase-tools
用于消除 Firebase 托管部署错误(如果您要更新现有托管站点)
你可以再做一次
1]firebase login
2]firebase init
3]firebase deploy
确保您当前的文件夹有两个东西: public 文件夹(包含所有文件 index.html)和 firebase.json 文件
【讨论】:
【参考方案12】:在您的 firebase.json 文件中,您是否为函数或 functions.source 设置了值?如果这样做,则可能会导致此问题。 删除 angular.json 中的函数就可以了
Firebase document for functions
【讨论】:
【参考方案13】:在我的情况下,当我没有在 firebase.json 中设置站点名称时发生此错误。
【讨论】:
【参考方案14】:当我没有运行npm install
时,我得到了那个错误。试试看。我希望这个简单的解决方案可以帮助任何有同样问题的人。
【讨论】:
对我来说,当我进入函数目录并运行 npm install 时它起作用了。见这里:***.com/questions/48602833/…【参考方案15】:为了解决这个问题而无需重启,
-
您必须确保关闭服务器,点击
CTRL + C
然后通过
firebase deploy --only functions
部署您的功能
然后再次运行firebase --serve
【讨论】:
【参考方案16】:对我来说,这是因为我在 functions
文件夹中运行 firebase deploy
。我需要在父firebase
目录中运行它
【讨论】:
【参考方案17】:你应该检查你是否有nodeJs的文件夹和你网站的文件夹 同一个本地磁盘优先!
我遇到了同样的问题,NodeJs 在 local disk (D:)
中,我正在尝试从 local disk (C:)
部署,但是当我将网站的文件夹更改为 (D:)
时,它工作正常。
【讨论】:
【参考方案18】:firebase deploy
、firebase serve
、firebase ...
在使用Cloud Functions for Firebase
时在firebase-debug.log
中没有任何有意义的信息?
检查您的functions
文件夹中是否有package.json
。它应该具有来自您的root
的package.json
的所有依赖项,并且看起来像这样:
"name": "functions",
"description": "Cloud Functions for Firebase",
"engines":
"node": "12"
,
"scripts":
"serve": "firebase serve --only functions",
"shell": "firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
,
"dependencies":
"@angular-builders/custom-webpack": "^11.1.1",
"@angular/animations": "^11.2.7",
"@angular/cdk": "^11.2.6",
...
,
"private": true
devDependencies
不是必需的。
【讨论】:
【参考方案19】:只需检查您的 firebase.json 并删除不必要的依赖项,检查我的
"hosting":
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
"source": "**",
"destination": "/index.html"
]
【讨论】:
以上是关于firebase 部署后“发生意外错误”的主要内容,如果未能解决你的问题,请参考以下文章
安装VS 2015更新2后,“基础连接已关闭:发送时发生意外错误”
Elastic Beanstalk - 实例上的命令失败。发生意外错误 [错误代码:0000000001]