Web uygulamanızı yerel olarak test edin, değişiklikleri başkalarıyla paylaşın, ardından canlı olarak dağıtın

Canlı sitenize dağıtmadan önce değişikliklerinizi görüntüleyip test etmenizi öneririz. Firebase Hosting, değişiklikleri yerel olarak görüntülemenize ve test etmenize ve taklit edilen arka uç proje kaynaklarıyla etkileşim kurmanıza olanak tanır. Ekip arkadaşlarınızın değişikliklerinizi görüntülemesi ve test etmesi gerekiyorsa Hosting, siteniz için paylaşılabilir, geçici önizleme URL'leri oluşturabilir. Hatta Search Ads 360'taki pull'dan dağıtım yapmak için GitHub entegrasyonu isteği gönderin.

Başlamadan önce

Hosting Başlayın sayfasında listelenen adımları, özellikle de aşağıdaki görevleri tamamlayın:

  1. Firebase KSA'yı yükleyin veya en son sürümüne güncelleyin.
  2. Yerel proje dizinini (uygulamanızın içeriğini içeren) Firebase projenize bağlayın.

İsteğe bağlı olarak uygulamanızın Hosting içeriğini ve yapılandırmasını dağıtabilirsiniz, ancak bu sayfadaki adımlar için ön koşul değildir.

1. adım: Yerel olarak test edin

Hızlı iterasyonlar yapıyorsanız veya uygulamanızın taklit edilmiş arka uç proje kaynaklarıyla etkileşime geçmesini istiyorsanız Hosting içeriğinizi ve yapılandırmanızı yerel olarak test edebilirsiniz. Yerel olarak test ederken Firebase, web uygulamanızı yerel olarak barındırılan bir URL'de sunar.

Hosting, Firebase Local Emulator Suite kapsamında yer alır. Bu, uygulamanızın emüle Hosting içeriğinizle etkileşimde bulunmasını sağlar ve yapılandırmanın yanı sıra isteğe bağlı olarak emüle edilen proje kaynaklarınızın (işlevler, veri tabanları ve kurallar).

  1. (İsteğe bağlı) Yerel olarak barındırılan uygulamanız varsayılan olarak emüle edilmiş değil gerçek proje kaynaklarıyla (işlevler, veritabanı, kurallar vb.) etkileşim kurar. Bunun yerine, isteğe bağlı olarak uygulamanızı bağlayarak yapılandırdığınız emulated proje kaynaklarını kullanabilirsiniz. Daha fazla bilgi: Realtime Database | Cloud Firestore | Cloud Functions

  2. Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:

    firebase emulators:start
  3. Web uygulamanızı, CLI tarafından döndürülen yerel URL'de (genellikle http://localhost:5000) açın.

  4. Yerel URL'yi değişikliklerle güncellemek için tarayıcınızı yenileyin.

Diğer yerel cihazlardan test etme

Emülatörler varsayılan olarak yalnızca localhost tarafından gönderilen isteklere yanıt verir. Bu, barındırılan içeriğinize bilgisayarınızın web tarayıcısından erişebileceğiniz ancak ağınızdaki diğer cihazlardan erişemeyeceğiniz anlamına gelir. Diğer yerel cihazlardan test yapmak istiyorsanız firebase.json cihazınızı aşağıdaki gibi yapılandırın:

"emulators": {
    // ...

    "hosting": {
      "port": 5000,
      "host": "0.0.0.0"
    }
  }

2. adım: Önizleyin ve paylaşın

Diğer kullanıcıların web uygulamanızdaki değişiklikleri yayınlanmadan önce görüntülemesini istiyorsanız önizleme kanallarını kullanabilirsiniz.

Bir önizleme kanalına dağıttıktan sonra Firebase, web uygulamanızı paylaşılabilir ve geçici bir URL olan "önizleme URL'sinde" yayınlar. Önizleme URL'si kullanırken web uygulamanız tüm proje kaynakları için gerçek arka ucunuzla ( herhangi bir "sabitlenmiş" hariç yeniden yazımlarınızdaki fonksiyonları yapılandırma).

Rastgele karma içerdiklerinden önizleme URL'lerinin tahmin edilmesi zor olsa da bu URL'lerin herkese açık olduğunu unutmayın. Yani URL'yi bilen herkes ilgili URL'ye erişebilir.

  1. Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:

    firebase hosting:channel:deploy CHANNEL_ID

    CHANNEL_ID değerini, boşluk içermeyen bir dizeyle değiştirin (örneğin, feature_mission-2-mars). Bu kimlik, önizleme kanalıyla ilişkili önizleme URL'si.

  2. Web uygulamanızı, CLI tarafından döndürülen önizleme URL'sinde açın. Şuna benzer bir görünüme sahiptir: PROJECT_ID--CHANNEL_ID-RANDOM_HASH.web.app

  3. Önizleme URL'nizi değişikliklerle güncellemek için aynı komutu tekrar çalıştırın. Komutta aynı CHANNEL_ID değerini belirttiğinizden emin olun.

Önizleme kanallarını yönetme hakkında daha fazla bilgi edinin. Örneğin, bir kanalın son geçerlilik tarihini nasıl ayarlayacağınızı öğrenin.

Firebase Hosting, otomatik olarak aşağıdakileri oluşturan bir GitHub Action'ını destekler: bir pull isteğinde değişiklik yaptığınızda önizleme URL'sini günceller. Bu GitHub işlemini nasıl ayarlayacağınızı ve kullanacağınızı öğrenin.

3. Adım: Canlı yayınlayın

Değişikliklerinizi dünyayla paylaşmaya hazır olduğunuzda Hosting öğenizi dağıtın ve yapılandırmanız yeterli olacaktır. Firebase, kullanım alanınıza bağlı olarak bu adım için birkaç farklı seçenek sunar (aşağıdaki seçeneklere bakın).

1. seçenek: Önizleme kanalından canlı kanalınıza klonlama

Bu seçenek, canlı kanalınıza dağıtım yaptığınıza dair güven sağlar. önizleme kanalında test ettiğiniz tam içerik ve yapılandırmayı içerir. Daha fazla bilgi edinin hakkında klonlama sürümleri.

  1. Herhangi bir dizinden aşağıdaki komutu çalıştırın:

    firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:live

    Her yer tutucuyu aşağıdakiyle değiştirin:

    • SOURCE_SITE_ID ve TARGET_SITE_ID: Bunlar kimliklerdir Hosting sitesinde kanallar bulunuyor.

      • Varsayılan Hosting siteniz için Firebase proje kimliğinizi kullanın.
      • Aynı Firebase projesinde, hatta aynı Firebase projesinde Firebase için Google Analytics'i kullanabilirsiniz.
    • SOURCE_CHANNEL_ID: Bu, canlı kanalınıza dağıtmak istediğiniz sürümü şu anda yayınlayan kanalın tanımlayıcısıdır.

      • Canlı bir kanal için kanal kimliği olarak live kullanın.
  2. Değişikliklerinizi görüntüleyin (sonraki adım).

2. seçenek: Yerel proje dizininizden canlı kanalınıza dağıtma

Bu seçenek, orijinal yapılandırmaya özel yapılandırmaları ayarlama veya önizleme kanalı kullanmamış olsanız bile dağıtabilirsiniz.

  1. Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:

    firebase deploy --only hosting
  2. Değişikliklerinizi görüntüleyin (sonraki adım).

ziyaret edin.

4. Adım: Değişikliklerinizi canlı sitenizde görüntüleyin

Yukarıdaki seçeneklerin her ikisi de Hosting içeriğinizi ve yapılandırmanızı şu siteler:

  • Varsayılan Hosting siteniz ve diğer tüm siteler için Firebase tarafından sağlanan alt alan adları Hosting site daha:
    SITE_ID.web.app (ör. PROJECT_ID.web.app)
    SITE_ID.firebaseapp.com (ör. PROJECT_ID.firebaseapp.com)

  • Bağlandığınız tüm özel alanlar Hosting siten

Dağıtımı belirli bir Hosting sitesiyle kısıtlamak için CLI komutunuzda bir dağıtım hedefi belirtin.

Diğer dağıtım etkinlikleri ve bilgileri

Dağıtım için yorum ekleyin

İsterseniz dağıtıma yorum da ekleyebilirsiniz. Bu yorum, diğer dağıtım bilgilerini Hosting kontrol paneli Firebase konsolunda kontrol edebilirsiniz. Örneğin:

firebase deploy --only hosting -m "Deploying the best new feature ever."

Predeploy ve postdeploy komut dosyası tabanlı görevler ekleme

İsteğe bağlı olarak, dağıtım öncesi veya sonrası görevleri gerçekleştirmek için kabuk komut dosyalarını firebase deploy komutuna bağlayabilirsiniz. Örneğin, bir yayın sonrası kanca, yöneticileri yeni site içeriği dağıtımlarından haberdar edebilir. Daha fazla bilgi için Ayrıntılı bilgi için Firebase CLI dokümanlarına göz atın.

Yayınlanan içeriği önbelleğe alma

Firebase Hosting, statik içerik için istek alındığında içeriği CDN'de otomatik olarak önbelleğe alır. Sitenizin içeriğini yeniden dağıtırsanız Firebase, yeni isteklerin yeni içeriğinizi alması için CDN'de tüm önbelleğe alınmış statik içeriğinizi otomatik olarak temizler.

Bu yapılandırmanın dinamik içeriği önbelleğe alma.

HTTPS üzerinden yayınlama

Firebase Hosting üzerinde barındırılmayan tüm harici kaynakların (harici komut dosyaları dahil) SSL (HTTPS) üzerinden yüklendiğinden emin olun. Çoğu tarayıcı, kullanıcıların "karma içerik" (SSL ve SSL olmayan trafik) yüklemesine izin vermez.

Dosyalar siliniyor

Firebase Hosting'te, dağıtılmış bir sitedeki seçili dosyaları silme yönteminin birincil yolu, dosyaları yerel olarak silmek ve ardından yeniden dağıtmaktır.

Sonraki adımlar