よくある質問とトラブルシューティング

このページでは、App Hosting に関するよくある質問(FAQ)の回答を紹介します。

App Hosting に関するよくある質問

一般的な App Hosting の制限事項とトラブルシューティング

  • Cloud Run インフラストラクチャの問題により、us-central1 などの一部のリージョンで、リソースの作成または更新が想定よりも遅くなることがあります。特定のリージョンでデプロイ レイテンシが問題になる場合は、別のリージョンにデプロイすることをおすすめします。
  • 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 コンソールで、バックエンドの作成時に「ビルドが見つからず、無効です」というエラーが断続的に表示されることがあります。
  • 同じプロジェクト内のすべてのバックエンドは、GitHub 組織/アカウントを共有します。それらは、その組織/アカウントの異なるリポジトリに接続できます。異なる GitHub アカウントに接続するバックエンドを作成するには、別々のプロジェクトに配置します。

Angular アプリの制限事項とトラブルシューティング

Angular の App Hosting サポートは現在も開発が進められており、拡大していますが、次のような制限があります。

  • I18n: コアの I18n 機能は動作しますが、SSR ページに直接移動するとエラーが発生することがあります。
  • ローカライズ: 異なるロケール用のバージョンのビルドはサポートされていません。
  • ビルダー: 現在、アプリケーション ビルダーのみがサポートされています。
  • 環境と Monorepo ツール: 複数のアプリケーション ターゲットがある Angular プロジェクトは失敗します。より完全なモノレポ サポートについては、Nx を使用してください。

Angular SSR での HTTP 400 エラーとプロキシの信頼

Firebase App Hosting にデプロイされた Angular アプリケーションで HTTP 400(不正なリクエスト)エラー、ホスト検証ブロッカー、プロキシ信頼の失敗が発生した場合は、Angular のバージョンに応じた推奨ソリューションに従ってください。

  • Angular v19、v20、v21: HTTP 400 エラーを解決するには、次の 2 つの方法があります。
    • 依存関係をアップグレードする: npm update @angular/core @angular/ssr を実行して、現在の Angular バージョンの最新のパッチ リリースをインストールします。
    • 手動構成: サーバー構成で trustProxyHeaders: true を設定して、コードレベルの構成フォールバックを適用します(Angular ドキュメントの信頼できるプロキシ ヘッダーの構成を参照)。
  • Angular v22: 新しいバックエンドでの最初のビルドで 400 エラーが返されることがあります。この問題を解決するには、2 つ目のビルドを生成します。以降のビルドはすべて意図したとおりに動作するはずです。

Next.js の制限事項とトラブルシューティング