Bu sayfada, App Hosting hakkında sık sorulan soruların (SSS) yanıtları yer almaktadır.
App Hosting SSS
Genel App Hosting sınırlamalar ve sorun giderme
- Cloud Run altyapısındaki bir sorun nedeniyle,
kaynak oluşturma veya güncelleme işlemleri
us-central1gibi bazı bölgelerde beklenenden daha yavaş olabilir. Belirli bir bölgede dağıtım gecikmesi sorun oluşturuyorsa Google, başka bir bölgeye dağıtım yapmanızı önerir. - App Hosting'nın CDN'si, önbellek anahtarlarına yalnızca belirli bir istek başlığı grubunu ekleyebilir. Bu listede NextJS'nin
RSC,Next-Router-State-Tree,Next-Router-Prefetch,Next-Router-Segment-PrefetchveNext-Urlbaşlıklarının yanı sıra Cloud CDN'nin standartAccept,Accept-Encoding,Access-Control-Request-Headers,Access-Control-Request-Method,Origin,Sec-Fetch-Dest,Sec-Fetch-Mode,Sec-Fetch-Site,X-Goog-Allowed-ResourcesveX-Originbaşlıkları yer alır. Bir yanıtta, burada listelenmeyen bir değere sahipVarybaşlığı varsa CDN'miz bunu önbelleğe almaz. - Önbelleğe alınmamış statik dosyalar Cloud Run konumundan sunulur. Daha sonraki bir sürümde, daha iyi performans için App Hosting kaynağında depolanıp sunulacaktır.
- Firebase konsolu, arka uç oluşturma sırasında aralıklı olarak "build was not found and is invalid" (derleme bulunamadı ve geçersiz) hatası gösterebilir.
- Aynı projedeki tüm arka uçlar, bir GitHub kuruluşu/hesabı paylaşır. Bu kullanıcılar, söz konusu kuruluş/hesap altındaki farklı depolara bağlanabilir. Farklı GitHub hesaplarına bağlı arka uçlar oluşturmak için bunları ayrı projelere yerleştirin.
Angular uygulaması sınırlamaları ve sorun giderme
App Hosting Angular desteği aktif olarak geliştirilip genişletilse de aşağıdaki sınırlamaları vardır:
- Uluslararasılaştırma: Temel uluslararasılaştırma işlevleri çalışsa da SSR sayfalarına doğrudan gezinme hatalara neden olabilir.
- Yerelleştirme: Farklı yerel ayarlar için sürümler oluşturma desteklenmez.
- Oluşturucular: Şu anda yalnızca uygulama oluşturucu desteklenmektedir.
- Ortamlar ve Monorepo Araçları: Birden fazla uygulama hedefi olan Angular projeleri başarısız olur. Daha kapsamlı monorepo desteği için Nx'i kullanın.
Angular SSR'de HTTP 400 Hataları ve Proxy Güveni
Firebase App Hosting üzerinde dağıtılan Angular uygulamanızda HTTP 400 (Hatalı İstek) hataları, ana makine doğrulama engelleyicileri veya proxy güveni hataları ile karşılaşırsanız Angular sürümünüz için önerilen çözümü uygulayın:
- Angular v19, v20 ve v21: Bu HTTP 400 hatalarını çözmek için iki seçeneğiniz vardır:
- Bağımlılıkları yükseltme: Mevcut Angular sürümünüz için en son yama sürümünü yüklemek üzere
npm update @angular/core @angular/ssrkomutunu çalıştırın. - Manuel yapılandırma: Sunucu yapılandırmanızda
trustProxyHeaders: truedeğerini ayarlayarak kod düzeyinde bir yapılandırma geri dönüşü uygulayın (Angular belgelerindeki Güvenilir proxy başlıklarını yapılandırma bölümüne bakın).
- Bağımlılıkları yükseltme: Mevcut Angular sürümünüz için en son yama sürümünü yüklemek üzere
- Angular v22: Yeni bir arka uçtaki ilk derleme 400 hatası döndürebilir. Sorunu çözmek için ikinci bir derleme oluşturun. Sonraki tüm derlemeler beklendiği gibi çalışmalıdır.
Next.js sınırlamaları ve sorun giderme
- Varsayılan olarak, yerleşik NextJS resim optimizasyonu,
images.unoptimizeddeğerini açıkça false olarak ayarlamadığınız veya özel bir Image Loader kullanmadığınız sürece App Hosting'de devre dışıdır. Next.js'te resim yüklemeyi optimize etme başlıklı makaleyi inceleyin. - Şu anda App Hosting, middleware kullanan NextJS uygulamaları için önbelleğe almayı sınırlandırmaktadır. Zamanla önbellek isabet oranları artar.
- Yüzde kodlamalı karakterler içeren URL yollarının kodu Cloud Run tarafından çözülür. Bu durum, yalnızca kodlanmış URL yollarının beklendiği özelliklerde (ör. Next.js paralel yönlendirme) sorunlara neden olabilir.