Cette page fournit des réponses aux questions fréquentes sur App Hosting.
Questions fréquentes App Hosting
App Hosting est-il compatible avec d'autres frameworks que Next.js et Angular ?
App Hosting fournit une prise en charge préconfigurée de la compilation et du déploiement pour Next.js et Angular, où nous nous sommes engagés à comprendre ces frameworks et à interpréter leurs configurations natives. Pour un certain nombre d'
autres frameworks, la communauté des développeurs prend en charge les adaptateurs de framework App Hosting. De plus, pour toute application Node.js avec un script de compilation et de démarrage, App Hosting tentera de créer des builds, mais ne peut pas garantir leur réussite de manière fiable. Consultez la section Intégration du framework.
Dans quelles régions Firebase App Hosting est-il disponible ?
Les régions pour App Hosting devraient se développer au fil du temps. Pour en savoir plus, consultez la page Emplacements App Hosting.
Puis-je utiliser GitLab ou d'autres fournisseurs Git en plus de GitHub pour les déploiements ?
Pour le moment, ce n'est pas possible, mais la prise en charge d'autres fournisseurs est prévue à long terme pour App Hosting.
Pourquoi ne trouve-t-on pas mon dépôt dans l'interface utilisateur de la console Firebase ?
Si votre dépôt ne figure pas dans la liste des options lorsque vous créez un backend dans la console Firebase, essayez d'abord de sélectionner Actualiser la liste. Si le dépôt préféré n'est toujours pas disponible, vous devrez peut-être l'ajouter à l'aide de l'option Accorder l'accès à un nouveau dépôt dans GitHub.
Vous pouvez également gérer des dépôts avec l'application GitHub Firebase App Hosting. Pour ce faire, accédez à votre profil GitHub, puis sélectionnez Paramètres, puis Applications. Sur la ligne du tableau correspondant à l'application Firebase App Hosting, cliquez sur Configurer pour gérer les dépôts.
Comment modifier le dépôt associé à mon projet App Hosting ?
Il n'est actuellement pas possible de modifier le dépôt. Toutefois, vous pouvez créer un backend associé au dépôt préféré dans le même projet ou dans un projet distinct.
Les en-têtes dépendent du framework. Faites ce que vous feriez normalement pour votre framework.
Existe-t-il un émulateur pour le développement local avec App Hosting ?
Oui, vous pouvez effectuer des tests locaux de votre application avant le déploiement de App Hosting à l'aide de l'émulateur App Hosting, qui fait partie de la suite d'émulateurs locaux Firebase. Consultez Tester en local le déploiement de votre application .
Pourquoi des erreurs s'affichent-elles dans App Hosting, mais pas dans Cloud Build ?
Dans ce cas, il est possible que l'erreur provienne de Cloud Run.
Vérifiez l'état du déploiement pour vous en assurer.
Comment modifier ou supprimer un compte GitHub associé ?
Pour supprimer le compte GitHub associé, ouvrez Developer Connect, assurez-vous que votre projet est sélectionné, puis supprimez la connexion firebase-app-hosting-github-oath
et celle qui commence par apphosting-github-conn-
. Lorsque vous ouvrez App Hosting dans la console Firebase, vous devriez pouvoir configurer une nouvelle connexion GitHub.
Comment puis-je définir des cookies pour mon site App Hosting ?
Bien qu'il n'ait pas été disponible au lancement de la version preview de App Hosting, l'en-tête de réponse HTTP Set-Cookie
fonctionne désormais comme prévu.
Limites et dépannage généraux pour App Hosting
- Les en-têtes Cache-Control sont modifiés pour limiter les caches CDN à 60 minutes. Cette limitation sera supprimée peu de temps après le lancement en disponibilité générale du produit.
- Le CDN de App Hosting ne peut inclure qu'un ensemble spécifique d'en-têtes de requête dans ses clés de cache. Cette liste inclut les en-têtes
RSC
, Next-Router-State-Tree
, Next-Router-Prefetch
, Next-Router-Segment-Prefetch
et Next-Url
de NextJS, ainsi que les en-têtes 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
et X-Origin
standards de Cloud CDN. Si une réponse contient un en-tête Vary
avec une valeur non listée ici, notre CDN ne la mettra pas en cache.
- Les fichiers statiques non mis en cache sont diffusés à partir de Cloud Run. Dans une version ultérieure, ils seront stockés et diffusés à partir de l'origine App Hosting pour de meilleures performances.
- La console Firebase peut afficher de manière intermittente une erreur "Build not found and is invalid" (Build introuvable et non valide) lors de la création du backend.
- Tous les backends d'un même projet partagent une organisation/un compte GitHub.
Ils peuvent être connectés à différents dépôts de cette organisation/compte.
Pour créer des backends connectés à différents comptes GitHub, placez-les dans des projets distincts.
Limites et dépannage des applications Angular
Bien que la compatibilité de App Hosting avec Angular soit en cours de développement et d'extension, elle présente les limites suivantes:
- I18n: bien que la fonctionnalité de base d'internationalisation fonctionne, la navigation directe vers les pages SSR peut entraîner des erreurs.
- Localisation: la création de versions pour différentes langues n'est pas prise en charge.
- Outils de création: seul l'outil de création d'applications est actuellement compatible.
- Environnements et outils Monorepo: les projets Angular comportant plusieurs cibles d'application échoueront. Pour une prise en charge plus complète des monorépertoires, utilisez Nx.
Limites et dépannage de Next.js
- Par défaut, l'optimisation des images NextJS intégrée est désactivée sur App Hosting, sauf si vous définissez explicitement
images.unoptimized
sur "false" ou si vous utilisez un chargeur d'images personnalisé. Consultez Optimiser le chargement d'images sur Next.js.
- Les chemins d'URL contenant des caractères encodés en pourcentage sont décodés par Cloud Run. Cela peut entraîner des problèmes avec les fonctionnalités qui n'attendent que des chemins d'URL encodés, comme le routage parallèle Next.js.
- Actuellement, App Hosting limite le stockage en cache des applications NextJS à l'aide d'un middleware.
Au fil du temps, les taux de succès de cache devraient s'améliorer.
- Les chemins d'URL contenant des caractères encodés en pourcentage sont décodés par Cloud Run.
Cela peut entraîner des problèmes avec les fonctionnalités qui n'acceptent que des chemins d'URL encodés, comme le routage parallèle Next.js.