本页提供了有关 App Hosting 的常见问题解答 (FAQ)。
App Hosting 常见问题解答
App Hosting 是否支持 Next.js 和 Angular 以外的框架?
App Hosting 为 Next.js 和 Angular 提供预配置的构建和部署支持,我们致力于了解这些框架并解读其原生配置。对于许多
其他框架,开发者社区支持 App Hosting 框架适配器。此外,对于任何具有构建和启动脚本的 Node.js 应用,App Hosting 将尝试构建,但无法可靠地保证成功。请参阅框架集成。
Firebase App Hosting 支持哪些地区?
App Hosting 的适用地区可能会随着时间的推移而扩大。如需了解最新信息,请参阅 App Hosting 位置。
除了 GitHub 之外,我能否使用 GitLab 或其他 Git 提供商进行部署?
目前还不行,但我们已将支持其他提供商纳入 App Hosting 的长期路线图规划。
为什么我在 Firebase 控制台界面中找不到我的代码库?
如果您在 Firebase 控制台中创建新的后端时,您的代码库未显示在选项列表中,请先尝试选择刷新列表。如果首选代码库仍然不可用,您可能需要使用授予对 GitHub 中新代码库的访问权限选项来添加该代码库。
此外,您还可以使用 Firebase App Hosting GitHub 应用管理代码库。为此,请前往您的 GitHub 个人资料,然后依次选择设置和应用。在 Firebase App Hosting 应用的表格行中,点击配置以管理代码库。
为什么我的网站无法在 Android 移动应用 WebView 中正常显示?
在 2025 年第 3 季度之前通过 Firebase 控制台配置了自定义网域的应用可能会发现,该网站在 Android WebView 中无法正常显示。这是因为该时间段内使用的 CNAME 记录与 Android WebView 不兼容。
如需解决此问题,请从 App Hosting 后端移除自定义网域,然后重新添加。更新后的控制台界面将提供 3 条新记录:一条网域的 A 记录和一条 TXT 记录,以及一条 ACME 质询子网域(用于证书)的 CNAME 记录;请使用这些记录来代替之前的 CNAME 记录。
如何更改与我的 App Hosting 项目关联的代码库?
目前,您无法更改代码库。不过,您可以在同一项目中创建与首选代码库关联的新后端,也可以在单独的项目中创建新后端。
标头取决于框架。执行您通常会为框架执行的任何操作。
是否有适用于本地开发且支持 App Hosting 的模拟器?
可以。您可以在 App Hosting 部署之前使用 App Hosting 模拟器(Firebase Local Emulator Suite 的一部分)对应用执行本地测试。请参阅在本地测试应用部署 。
为什么我在 App Hosting 中看到错误,但在 Cloud Build 中没有看到错误?
在这种情况下,您的错误可能来自 Cloud Run。
检查发布的状态以确保。
如何更改或移除关联的 GitHub 账号?
如需移除关联的 GitHub 账号,请打开 Developer Connect,确保已选择您的项目,然后删除 firebase-app-hosting-github-oath
连接和以 apphosting-github-conn-
开头的连接。在 Firebase 控制台中打开 App Hosting 后,您现在应该能够设置新的 GitHub 连接了。
如何为我的 App Hosting 网站设置 Cookie?
虽然在 App Hosting 预览版发布时,该功能尚未推出,但 Set-Cookie
HTTP 响应标头现在可按预期运行。
一般 App Hosting 限制和问题排查
- App Hosting 的 CDN 只能在其缓存键中包含一组特定的请求标头。该列表包含 NextJS 的
RSC
、Next-Router-State-Tree
、Next-Router-Prefetch
、Next-Router-Segment-Prefetch
和 Next-Url
标头,以及 Cloud CDN 的标准 Accept
、Accept-Encoding
、Access-Control-Request-Headers
、Access-Control-Request-Method
、Origin
、Sec-Fetch-Dest
、Sec-Fetch-Mode
、Sec-Fetch-Site
、X-Goog-Allowed-Resources
和 X-Origin
。如果响应包含 Vary
标头,但其值未在此处列出,我们的 CDN 将不会缓存该响应。
- 未缓存的静态文件会从 Cloud Run 中提供;在后续版本中,这些文件将存储在 App Hosting 源中并从该源提供,以提高性能。
- Firebase 控制台可能会在创建后端时偶尔显示“找不到 build,build 无效”错误。
- 同一项目中的所有后端共享一个 GitHub 组织/账号。
它们可以连接到相应组织/账号下的不同代码库。
如需创建连接到不同 GitHub 账号的后端,请将它们放在不同的项目中。
Angular 应用限制和问题排查
虽然 App Hosting 对 Angular 的支持正在积极开发和扩展,但仍存在以下限制:
- I18n:虽然核心 I18n 功能可以正常运行,但直接导航到 SSR 页面可能会导致错误。
- 本地化:不支持为不同语言区域构建版本。
- 构建器:目前仅支持应用构建器。
- 环境和 Monorepo 工具:如果 Angular 项目包含多个应用目标,则会失败。如需更完善的 monorepo 支持,请使用 Nx。
Next.js 限制和问题排查