Google'a bağlanma
Google'dan bir kez erişim anahtarı alırsınız, uygulamaya yapıştırırsınız, sitenizi seçersiniz. Search Console ve Analytics 4 verisi böyle gelir.
Bu sayfayı bitirince uygulama Google'a sizin adınıza bağlanır ve sitenizin verisini okur. Bunun için Google'dan bir kez "Google erişim anahtarı" alırsınız. Yaklaşık on dakika sürer, sonra bir daha uğraşmazsınız. Daha kısa bir yol da var (hizmet hesabı), sayfanın sonunda. Çoğu kişiye o önerilir.
Gerekenler
- Search Console'da doğrulanmış bir siteniz (mülk). Doğrulanmamışsa uygulama onu listede göremez.
- Analytics 4 için o mülkte en az "Görüntüleyen" yetkisi. Bu isteğe bağlıdır, Search Console tek başına yeter.
- Bir Google hesabı. Google Cloud Console (Google'ın geliştirici sayfası) ücretsizdir, kart istemez.
- Açık bir uygulama penceresi. İki yönlendirme adresini (izin verdikten sonra Google'ın sizi uygulamaya geri getirdiği adres) oradan kopyalayacaksınız.
Adımlar
- Uygulamada Ayarlar → Google bölümünü açın. İki adres görürsünüz. Biri
/api/gsc/oauth/callbackile biter (Search Console), öteki/api/ga4/oauth/callbackile (Analytics). Windows paketinde adreslerhttp://127.0.0.1:3001ile, Docker'dahttp://localhost:3001ile başlar. İkisini de bir yere not edin. - Tarayıcıda
console.cloud.google.comadresine gidin. Üstteki proje seçiciden Yeni proje deyin. Ad önemsiz, "seowatcher" yazabilirsiniz. - API'ler ve Hizmetler → Kitaplık sayfasını açın. Arama kutusuna Google Search Console API yazın, tıklayın, Etkinleştir deyin. Analytics de bağlayacaksanız aynısını Google Analytics Admin API ve Google Analytics Data API için yapın.
- API'ler ve Hizmetler → OAuth izin ekranı sayfasını açın. Kullanıcı türü olarak Harici seçin. Uygulama adı olarak istediğiniz bir ad, e-posta alanlarına kendi e-posta adresinizi yazın. Yayın durumu "Test" kalabilir.
- Aynı sayfada Test kullanıcıları bölümüne kendi Google hesabınızı ekleyin. Google'ın ayrıca onaylaması gerekmez.
- API'ler ve Hizmetler → Kimlik bilgileri sayfasında Kimlik bilgisi oluştur deyin, sonra OAuth istemci kimliği seçin. Bu, Google erişim anahtarınızdır.
- Uygulama türü olarak Web uygulaması seçin.
- Yetkilendirilmiş yönlendirme URI'leri bölümüne 1. adımdaki iki adresi ekleyin. Sona eğik çizgi koymayın. Tek karakterlik fark bile Google'da "redirect_uri_mismatch" (adres uyuşmuyor) hatasına yol açar.
- Oluştur deyin. Google bir istemci kimliği ve bir gizli anahtar gösterir.
- Uygulamaya dönün. Ayarlar → Google bölümünde İstemci kimliği alanına
.apps.googleusercontent.comile biten kimliği yapıştırın. Gizli anahtar alanınaGOCSPX-ile başlayan anahtarı yapıştırın. - Kaydet deyin. "Google erişim anahtarı kaydedildi" bildirimi çıkar. Yeniden başlatmak gerekmez. Kimliği yanlış alana yapıştırırsanız uygulama şu uyarıyı verir: "Kimlik .apps.googleusercontent.com ile bitmeli. Gizli anahtarı değil, istemci kimliğini yapıştırın."
- Henüz projeniz yoksa Yeni proje ile bir tane oluşturun. Ayrıntı için Projeler kılavuzuna bakın.
- Projenize gidin: Proje ayarları → Bağlantılar. Google Search Console kartında Bağlan deyin.
- Google'ın izin ekranında test kullanıcısı olarak eklediğiniz hesabı seçin ve izin verin. Uygulamaya dönünce "Search Console bağlandı" bildirimi gelir.
- Mülk seç listesinden sitenizi seçin, Mülkü kaydet deyin. Alan adı mülkü seçerseniz kart "Alan adı mülkü: tüm alt alan adlarını ve http/https adreslerini kapsar." yazar.
- Analytics için aynı ekranda Google Analytics kartında Bağlan deyin, izin verin, mülkü seçin. İki bağlantı ayrı izin ister. Biri ötekinin yerini tutmaz.
Daha kısa yol: hizmet hesabı
Hizmet hesabı, Google'a sizin yerinize bağlanan özel bir hesaptır. İzin ekranı ve yönlendirme adresi gerekmez. Çoğu kişi için önerilen yol budur. Uygulamaya kendi Google hesabınızla bağlanmak istiyorsanız yukarıdaki yolu izleyin.
console.cloud.google.comadresini açın. Aynı Cloud projesinde 3. adımdaki API'lerin etkin olduğundan emin olun. IAM ve Yönetici → Hizmet hesapları sayfasına gidin.- Hizmet hesabı oluştur deyin. Bir ad verin. Rol adımlarını atlayıp hesabı oluşturun.
- Hesabın satırında Anahtarlar sekmesini açın. Anahtar ekle → Yeni anahtar oluştur deyin.
- Anahtar türü olarak JSON seçin ve Oluştur deyin. Bilgisayarınıza bir dosya iner.
- Uygulamada Ayarlar → Hizmet hesabı bölümünü açın. İndirdiğiniz dosyayı Not Defteri ile açın, içindekinin tamamını alana yapıştırıp kaydedin. Ekran hesabın e-posta adresini gösterir.
- Search Console'da Ayarlar → Kullanıcılar ve izinler → Kullanıcı ekle deyin. Bu e-posta adresini yazın, izin olarak Tam seçin.
- Analytics kullanacaksanız Google Analytics'te mülkün Yönetici → Erişim yönetimi bölümünü açın. Aynı e-posta adresini Görüntüleyen izniyle ekleyin.
Kayıtlı bir hizmet hesabı varsa uygulama onu kullanır. Ayarlar ekranındaki "Şu an kullanılan" satırı hangisinin kullanıldığını gösterir.
Kontrol
- Proje ayarları → Bağlantılar kartlarında rozet Bağlı olmalı.
- Panel ekranındaki dört sayı kartı birkaç saniyede dolmalı. Yeni bir sitede sayılar sıfır olabilir. Bu bağlantı hatası değildir.
- Ayarlar → Google bölümündeki rozet Kayıtlı demeli.
Sık sorulanlar
Gizli anahtar nerede saklanıyor? Bu bilgisayardaki veritabanında, şifreli. Şifreleyen anahtar instance-secret dosyasıdır (Windows'ta veri klasöründe, Docker'da veri deposunda). Anahtar tarayıcıya hiç gönderilmez.
Aynı erişim anahtarını birden fazla projede kullanabilir miyim? Evet. Kurulum başına bir tane yeter. Her proje kendi mülkünü seçer.
Birkaç gün sonra bağlantı düştü. Google "Test" durumundaki uygulamalarda izni yedi günle sınırlayabilir. Kart "Bağlantının süresi doldu" der. Yeniden bağlan yeter. Kalıcı çözüm, izin ekranını "Üretim" durumuna almak ya da hizmet hesabına geçmektir.
Hangi izinleri istiyor? Search Console için yalnızca okuma (webmasters.readonly), Analytics için yalnızca okuma (analytics.readonly). Uygulama Google'da hiçbir şeyi değiştiremez.
Sorun çıkarsa
- Google "redirect_uri_mismatch" diyor. Cloud Console'daki yönlendirme adresi uygulamadakiyle bire bir aynı değil. Ayarlar ekranındaki kopyalama düğmesini kullanın. http ile https, 127.0.0.1 ile localhost ya da sondaki eğik çizgi bu hataya yol açar.
- "Google erişim anahtarı eksik" uyarısı çıkıyor. 10. ve 11. adım atlanmış ya da kayıt başarısız olmuş. Ayarlar ekranında rozet Kayıtlı olmalı.
- Google "access_denied" diyor. Giriş yaptığınız hesap izin ekranındaki test kullanıcıları listesinde yok. Hesabı listeye ekleyin ya da doğru hesabı seçin.
- Mülk listesi boş. Bu hesabın Search Console'da doğrulanmış sitesi ya da Analytics yetkisi yok. Önce siteyi doğrulayın.
- "Bağlantısı tamamlanmadı" ve "state_mismatch" yazıyor. İzin ekranını iki sekmede açmış ya da on dakikadan fazla beklemiş olabilirsiniz. Tek sekmede baştan deneyin. Tarayıcı çerezleri (küçük kayıt dosyaları) kapalıysa açın.
- "Google hesabı zaten bağlı" yazıyor. Bu Google hesabı daha önce başka bir kayda bağlanmış. Mülk seçicideki Hesabı kaldır ile eskisini kaldırıp yeniden bağlanın.
- Güncellemeden sonra bağlantılar koptu. Şifreleme anahtarı değişmiş olabilir (Docker'da
BETTER_AUTH_SECRETeklendi ya da veri deposu yeniden oluşturuldu). Kartlarda Yeniden bağlan deyin.