Domande frequenti e risoluzione dei problemi

Questa pagina fornisce risposte alle domande frequenti su App Hosting.

App Hosting Domande frequenti

Limitazioni e risoluzione dei problemi generali di App Hosting

  • A causa di un problema nell'infrastruttura di Cloud Run, la creazione o l'aggiornamento delle risorse potrebbe essere più lento del previsto in alcune regioni come us-central1. Se la latenza del deployment è un problema in una determinata regione, Google consiglia di eseguire il deployment in un'altra regione.
  • La CDN di App Hosting può includere solo un insieme specifico di intestazioni della richiesta nelle chiavi della cache. Questo elenco include le intestazioni RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch e Next-Url di NextJS, nonché le intestazioni standard 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 e X-Origin di Cloud CDN. Se una risposta contiene un'intestazione Vary con un valore non elencato qui, la nostra CDN non la memorizzerà nella cache.
  • I file statici non memorizzati nella cache vengono pubblicati da Cloud Run; in una release successiva, verranno archiviati e pubblicati dall'origine App Hosting per prestazioni migliori.
  • La console Firebase potrebbe mostrare a intermittenza l'errore "build non trovata e non valida" durante la creazione del backend.
  • Tutti i backend nello stesso progetto condividono un'organizzazione/un account GitHub. Possono essere collegati a repository diversi nell'organizzazione/nell'account. Per creare backend connessi a diversi account GitHub, inseriscili in progetti separati.

Limitazioni e risoluzione dei problemi delle app Angular

Sebbene il supporto di App Hosting per Angular sia in fase di sviluppo attivo e in espansione, presenta i seguenti limiti:

  • I18n: sebbene la funzionalità I18n di base funzioni, la navigazione diretta alle pagine SSR può generare errori.
  • Localizzazione: la creazione di versioni per impostazioni internazionali diverse non è supportata.
  • Builder: al momento è supportato solo il builder di applicazioni.
  • Ambienti e strumenti Monorepo: i progetti Angular con più di un target di applicazione non andranno a buon fine. Per un supporto più completo dei monorepo, utilizza Nx.

Errori HTTP 400 e attendibilità del proxy in Angular SSR

Se la tua applicazione Angular di cui è stato eseguito il deployment su Firebase App Hosting rileva errori HTTP 400 (Richiesta non valida), blocchi di convalida dell'host o errori di attendibilità del proxy, segui la soluzione consigliata per la tua versione di Angular:

  • Angular v19, v20 e v21: hai due modi per risolvere questi errori HTTP 400:
    • Esegui l'upgrade delle dipendenze: esegui npm update @angular/core @angular/ssr per installare l'ultima patch per la tua versione attuale di Angular.
    • Configurazione manuale: applica un fallback della configurazione a livello di codice impostando trustProxyHeaders: true nella configurazione del server (vedi Configurazione delle intestazioni proxy attendibili nella documentazione di Angular).
  • Angular v22: la prima build su un nuovo backend potrebbe restituire errori 400. Per risolvere il problema, genera una seconda build. Tutte le build successive dovrebbero funzionare come previsto.

Limitazioni e risoluzione dei problemi di Next.js

  • Per impostazione predefinita, l'ottimizzazione delle immagini NextJS integrata è disattivata su App Hosting, a meno che tu non imposti esplicitamente images.unoptimized su false o utilizzi un Image Loader personalizzato. Consulta Ottimizzare il caricamento delle immagini su Next.js.
  • I percorsi URL contenenti caratteri codificati in percentuale vengono decodificati da Cloud Run. Ciò potrebbe causare problemi con le funzionalità che prevedono solo percorsi URL codificati, come il routing parallelo di Next.js.
  • Al momento, App Hosting limita la memorizzazione nella cache per le app NextJS che utilizzano middleware. Nel tempo, i tassi di successo della cache dovrebbero migliorare.
  • I percorsi URL contenenti caratteri con codifica percentuale vengono decodificati da Cloud Run. Ciò potrebbe causare problemi con le funzionalità che prevedono solo percorsi URL codificati, ad esempio il routing parallelo di Next.js.