Özel önizleme sunucusu ayarlama

Bu kılavuz, sunucu tarafı etiketleme için Cloud Run'ı kullanan ve gizli önizleme sunucusu oluşturmak isteyen geliştiricilere yöneliktir.

Sunucu tarafı etiketleme, etiketleme ve etiketleme değişikliklerini uygulamadan önce önizleme ve hata ayıklama modunda önizlemenizi sağlar. Bu aşama, etiketlerinizin amaçlandığı şekilde davranmasını sağlamak için geliştirme iş akışının kritik bir parçasıdır. Bu özelliği etkinleştirmek için biri etiketleme sunucusu, diğeri önizleme sunucusu için olmak üzere iki Cloud Run dağıtımı gerekir. Bu kılavuzda, iki sunucunun nasıl iletişim kurduğu ve bunları kurumsal bir ortamda nasıl yapılandırabileceğiniz hakkında daha fazla bilgi sunulmaktadır.

Genel bakış

Cloud Run'a sunucu tarafı etiketleme dağıttığınızda yük dengeleyici ile veya yük dengeleyici olmadan dağıtabilirsiniz. Çok bölgeli dağıtımlarda trafiği en yakın örneğe yönlendirmek için bir yük dengeleyiciye ihtiyacınız vardır.

Yük dengeleyici olmadan

Yük dengeleyici olmadan

Şekil 1: Yük dengeleyici olmadan dağıtım.

Yük dengeleyicili

Yük dengeleyici ile

Şekil 2: Yük dengeleyici ile dağıtım.

Her iki dağıtımda da önizleme sunucusu ve üretim etiketleme ortamının giriş noktası aynı URL'dir (örneğin, sgtm.example.com). Etiketleme sunucusu, önizleme sunucusunun URL'sini temsil eden PREVIEW_SERVER_URL adlı ortam değişkeniyle dağıtılır.

tagmanager.google.com sayfasını ziyaret edip önizleme modunu açtığınızda, Etiket Yöneticisi sgtm.example.com?id=[gtm_server_id]&gtm_auth=[auth_id]&gtm_preview=[env_id] sayfasına gider ve bir çerez ayarlar. Daha sonra, hedef web sitesini keşfetmek için aynı tarayıcıyı kullandığınızda sgtm.example.com öğesine gönderilen istekler de çerezi yönlendirir. Etiketleme sunucusu, çerez nedeniyle bunların sizin etkinlikleriniz olduğunu bilir. Dolayısıyla, etkinliklerinizi görüntülemeniz ve sorun gidermeniz için yalnızca önizleme sunucusuna yönlendirir.

Etiketleme sunucusu, PREVIEW_SERVER_URL ortam değişkeninde ayarlanan URL'ye HTTP istekleri göndererek bu etkinlikleri yönlendirir.

Herkese açık önizleme sunucuları hakkında

Bu varsayılan davranış, önizleme sunucunuzun herkese açık olmasını gerektirir. Ancak bu durum, altyapının herkese açık olması konusunda kısıtlamalara sahip olduğundan ve genellikle yük dengeleyici aracılığıyla ek güvenlik önlemleri uyguladığından bazı kuruluşlar için sorun teşkil eder. Yük dengeleyici size şunları sunar:

  • Şifre paketlerini kısıtlamak için SSL politikaları gibi özellikler üzerinde daha fazla denetim.
  • Web uygulaması güvenlik duvarı (WAF) veya dağıtılmış hizmet reddi (DDoS) için Cloud Armor ile yerel entegrasyon.
  • Gelişmiş trafik yönetimi özellikleri.

Önizleme sunucunuzu yük dengeleyici üzerinden yönlendirme

Özel önizleme sunucusu oluşturmak için ek bir alt alan adıyla yük dengeleyici üzerinden ana makine tabanlı yönlendirme kullanın. Bu kılavuzun geri kalanında, önizleme sunucunuzu bir yük dengeleyici üzerinden nasıl yönlendireceğiniz açıklanmaktadır.

Ön koşullar

  • Etiketleme sunucusu, Cloud Run'da bir yük dengeleyicinin arkasında dağıtılır.
  • Google Cloud projesine erişim.
  • Önizleme sunucusu için yeni bir alt alan adına erişim (ör. preview.sgtm.example.com).

1. Adım: Ortam değişkenini yeni bir alt alan adıyla güncelleyin

Yeni önizleme sunucusu alanını kullanmak için sunucu tarafı etiketleme sunucusu ortam değişkenini PREVIEW_SERVER_URL güncelleyin:

  1. Cloud Run'ı açın.
  2. Etiketleme sunucusunu seçin.
  3. Düzenle'yi ve Yeni düzeltmeyi dağıt'ı tıklayın.
  4. Değişkenler ve gizli anahtarlar sekmesindeki Kapsayıcılar bölümünde, PREVIEW_SERVER_URL alanını yeni alanla değiştirin. Örneğin: preview.sgtm.example.com.

2. Adım: Mevcut yük dengeleyiciyi ana makine tabanlı yönlendirme kullanacak şekilde yapılandırın

Mevcut yük dengeleyiciyi yapılandırmak için ana makine tabanlı yönlendirme kullanın ve trafiği doğru sunucuya gönderin:

  1. Cloud Run'da Yük dengeleme sayfasını açın ve yük dengeleyicinizin adını tıklayın.
  2. Düzenle düğmesini tıklayın.
  3. Arka uç yapılandırması sayfasını tıklayın ve Arka uç hizmetleri ve arka uç paketleri açılır menüsünü açın.
  4. Create a backend service'i (Arka uç hizmeti oluştur) tıklayın ve aşağıdakileri tamamlayın:
    1. Bu ada uygun bir ad verin (örneğin, preview-backend-service).
    2. Arka uç türünü Sunucusuz ağ uç noktası grubu olarak seçin.
  5. Backend (Arka uç) bölümünde yeni bir sunucusuz ağ uç noktası grubu oluşturun ve aşağıdakileri tamamlayın:
    1. Bir ad verin ve önizleme sunucusunun barındırıldığı bölgeyi seçin.
    2. Sunucusuz ağ uç noktası grup türü olarak Cloud Run'ı ve hizmet olarak önizleme sunucusunu seçin.
    3. Oluştur'u tıklayın.
  6. Diğer ayarları gerektiği gibi değiştirin veya varsayılan ayarları koruyun ve Oluştur'u tıklayın.

3. adım: Yeni bir kural ekleyin ve giriş denetimini güncelleyin

Yeni ana makine URL'si için bir kural eklemek ve giriş kontrolünü güncellemek üzere:

  1. Ana makine ve yol kuralları sayfasını açın.
  2. Aşağıdaki durumlarda yeni bir kural ekleyin:
    • Ana makine yeni URL'dir: preview.sgtm.example.com
    • Yol: /*
    • Arka uç: preview-backend-service
  3. Yük dengeleyiciyi yeniden dağıtmak için Güncelle düğmesini tıklayın.
  4. Cloud Run'a geri dönüp önizleme sunucusunu açın ve Ağ iletişimi sekmesini seçin.
  5. Giriş denetimi'ni Dahili olarak değiştirin ve herkese açık olmaması için Harici uygulama yük dengeleyicilerinden gelen trafiğe izin ver seçeneğini işaretleyin.

Sonuç: Sunucu mimariniz artık Şekil 3'e benzemelidir. Burada, trafik isteklerinin tümü etiketleme sunucusuna yönlendirilir ve etiketleme sunucusu istekleri önizleme sunucusuna yönlendirebilir.

Ana makine tabanlı yönlendirme

Şekil 3: Ana makine tabanlı yönlendirme kullanma.

Yapılandırmanızı kontrol etme

Yapılandırmanızı kontrol etmek için:

  1. Google Etiket Yöneticisi'ni açın.
  2. Sunucu kapsayıcınızı açın.
  3. Yönetici > Kapsayıcı ayarları'nı tıklayın ve sunucu kapsayıcısı URL'sini, önizleme sunucusu URL'sine ayarlayın.
  4. Pencereyi kapatın ve çalışma alanını önizleyin. Hata ayıklama penceresi açılır. Web sitenizde gezinirken etkinlikleriniz hata ayıklama penceresinde görünür.