Angular 18 SSR应用部署Firebase App Hosting失败:无法确定部署应用
Angular 18 SSR 部署 Firebase App Hosting 报错「Unable to determine the application to deploy」的排查方案
检查
angular.json核心配置
确认文件顶层的defaultProject字段值与你的SSR项目名称完全一致,同时确保该项目的architect节点下包含完整的build和server配置,输出路径需明确指向正确的编译目录:{ "defaultProject": "your-ssr-app-name", "projects": { "your-ssr-app-name": { "architect": { "build": { "builder": "@angular-devkit/build-angular:application", "options": { "outputPath": "dist/your-ssr-app-name/browser" } }, "server": { "builder": "@angular-devkit/build-angular:server", "options": { "outputPath": "dist/your-ssr-app-name/server" } } } } } }同步依赖版本
升级Firebase CLI到最新稳定版:npm install -g firebase-tools,同时更新项目内的@angular/fire依赖以适配Angular 18:npm install @angular/fire@latest重新关联Firebase项目
在项目根目录执行firebase init hosting,选择已有的Firebase项目,部署流程中明确选择SSR选项,确保初始化时正确绑定Angular应用验证项目脚本与结构
确保根目录package.json的scripts节点包含build和serve:ssr命令,示例:"scripts": { "build": "ng build && ng run your-ssr-app-name:server", "serve:ssr": "node dist/your-ssr-app-name/server/server.mjs" }手动配置部署规则
在根目录创建firebase.json,明确指定hosting的源文件路径和SSR入口:{ "hosting": { "source": ".", "frameworksBackend": { "region": "us-central1", "entryPoint": "dist/your-ssr-app-name/server/server.mjs" } } }
内容的提问来源于stack exchange,提问作者Lukas Bühler
相关产品推荐
相关产品推荐

