Na tej stronie znajdziesz odpowiedzi na najczęstsze pytania dotyczące App Hosting.
App Hosting Najczęstsze pytania
Ogólne App Hosting ograniczenia i rozwiązywanie problemów
- Z powodu problemu z Cloud Run infrastrukturą,
tworzenie lub aktualizowanie zasobów może być wolniejsze niż
oczekiwano w niektórych regionach, np.
us-central1. Jeśli opóźnienie wdrożenia jest problemem w danym regionie, Google zaleca wdrożenie w innym regionie. - CDN hostingu aplikacji App Hosting może zawierać w
kluczach pamięci podręcznej tylko określony zestaw nagłówków żądań. Ta lista obejmuje nagłówki NextJS
RSC,Next-Router-State-Tree,Next-Router-Prefetch,Next-Router-Segment-Prefetch, iNext-Url, a także standardowe nagłówki Cloud CDNAccept,Accept-Encoding,Access-Control-Request-Headers,Access-Control-Request-Method,Origin,Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,X-Goog-Allowed-Resources, iX-Origin. Jeśli odpowiedź zawiera nagłówekVaryz wartością, której nie ma na tej liście, nasza sieć CDN nie będzie jej buforować. - Niebuforowane pliki statyczne są udostępniane z Cloud Run. W późniejszej wersji będą one przechowywane i udostępniane z punktu początkowego App Hosting hostingu aplikacji, co zwiększy wydajność.
- Konsola Firebase może okresowo wyświetlać komunikat o błędzie „Nie znaleziono kompilacji i jest ona nieprawidłowa” podczas tworzenia backendu.
- Wszystkie backendy w tym samym projekcie mają wspólną organizację lub konto GitHub. Można je połączyć z różnymi repozytoriami w ramach tej organizacji lub konta. Aby utworzyć backendy połączone z różnymi kontami GitHub, umieść je w osobnych projektach.
Ograniczenia i rozwiązywanie problemów z aplikacjami Angular
Chociaż obsługa App Hosting Angular w hostingu aplikacji jest w trakcie aktywnego rozwoju i rozszerzania, ma ona następujące ograniczenia:
- I18n: podstawowe funkcje I18n działają, ale bezpośrednie przejście do stron SSR może powodować błędy.
- Lokalizacja: tworzenie wersji dla różnych ustawień regionalnych nie jest obsługiwane.
- Kreatory: obecnie obsługiwany jest tylko kreator aplikacji.
- Środowiska i narzędzia Monorepo: projekty Angular, które mają więcej niż 1 docelową aplikację, nie będą działać. Aby uzyskać pełniejszą obsługę Monorepo, użyj Nx.
Błędy HTTP 400 i zaufanie serwera proxy w Angular SSR
Jeśli aplikacja Angular wdrożona w Firebase App Hosting napotyka błędy HTTP 400 (Nieprawidłowe żądanie), blokery weryfikacji hosta lub błędy zaufania serwera proxy , wykonaj zalecane rozwiązanie dla swojej wersji Angular:
- Angular w wersji 19, 20 i 21: te błędy HTTP 400
możesz rozwiązać na 2 sposoby:
- Zaktualizuj zależności: uruchom
npm update @angular/core @angular/ssr, aby zainstalować najnowszą łatkę dla bieżącej wersji Angular. - Konfiguracja ręczna: zastosuj rezerwowy kod konfiguracji, by
ustawić
trustProxyHeaders: truew konfiguracji serwera (więcej informacji znajdziesz w artykule Konfigurowanie zaufanych nagłówków serwera proxy w dokumentacji Angular).
- Zaktualizuj zależności: uruchom
- Angular w wersji 22: pierwsza kompilacja w nowym backendzie może zwracać błędy 400. Aby rozwiązać ten problem, wygeneruj drugą kompilację. Wszystkie kolejne kompilacje powinny działać zgodnie z oczekiwaniami.
Ograniczenia i rozwiązywanie problemów z Next.js
- Domyślnie wbudowana optymalizacja obrazów NextJS jest wyłączona w hostingu aplikacji, chyba że wyraźnie ustawisz
images.unoptimizedna false lub użyjesz niestandardowego modułu ładującego obrazy. Zobacz Optymalizowanie ładowania obrazów w Next.js. - Ścieżki URL zawierające znaki zakodowane w procentach są dekodowane przez Cloud Run. Może to powodować problemy z funkcjami, które oczekują tylko zakodowanych ścieżek URL, np. z równoległym routingiem Next.js.
- Obecnie App Hosting ogranicza buforowanie aplikacji NextJS za pomocą oprogramowania pośredniczącego. Z czasem współczynnik trafień w pamięci podręcznej powinien się poprawić.
- Ścieżki URL zawierające znaki zakodowane w procentach są dekodowane przez Cloud Run. Może to powodować problemy z funkcjami, które oczekują tylko zakodowanych ścieżek URL, np. z równoległym routingiem Next.js.