如何将Flutter Web应用部署到Firebase Hosting第二站点且不影响原有站点
部署Flutter Web到Firebase第二个Hosting站点的操作步骤
1 完成本地Firebase基础初始化
你之前中断的firebase init流程可以继续走完,不会直接触发线上部署,也不会影响原有生产站点内容:
- 发布目录按Flutter Web要求填写
build/web即可,这步仅配置本地的产物读取路径 - 其余配置项(单页应用支持、自动构建配置、index.html覆盖提示等)按你的项目实际需求选择即可
- 流程走完后本地会自动生成
firebase.json和.firebaserc两个配置文件,之前的找不到firebase.json报错就会消失
2 绑定多站点部署目标
- 先确认你已经在Firebase控制台Hosting页面完成了
secondawesome站点的创建,站点ID准确 - 执行命令绑定部署目标:
firebase target:apply hosting secondawesome secondawesome
这里第一个secondawesome是本地自定义的目标标识,第二个是Firebase后台的站点ID,保持一致即可 - 打开本地生成的
firebase.json,找到hosting配置块,添加target字段绑定目标,示例配置如下:
{ "hosting": { "target": "secondawesome", "public": "build/web", // 其余原有配置(rewrites、headers等)保持不变即可 } }
3 打包部署
- 先构建Flutter Web的生产产物:
flutter build web - 执行定向部署命令,仅部署到第二个站点,完全不会影响原有生产站点内容:
firebase deploy --only hosting:secondawesome
补充说明
如果后续需要同时管理两个站点的部署,可以把firebase.json中的hosting字段改为数组格式,分别配置两个站点的target和对应本地发布目录即可,部署时分别指定对应目标名即可独立更新。
内容的提问来源于stack exchange,提问作者David L
相关产品推荐
相关产品推荐

