Sitenizde gömülü çalışan her üçüncü taraf servis, siz ona hiçbir şey göndermeseniz bile ziyaretçi hakkında en az üç bilgiyi görür: IP adresi, tarayıcı bilgisi ve ziyaretçinin hangi sayfada olduğu. Analitik kodu, harita penceresi, gömülü video, canlı destek kutusu, dışarıdan çağrılan yazı tipi ve form eklentisi bu listeye girer. Bu yüzden sitenin veri envanteri sayfa listesiyle değil, dışarıya giden istek listesiyle çıkar.
Gömülü servis neyi görür, neyi görmez?
Tarayıcı bir sayfayı açtığında, sayfa içinde başka bir alan adına yapılan her istek o alan adının sunucusuna gider. İstek yalnızca dosyayı istemekle kalmaz; isteğin kendisi ziyaretçinin bağlantı bilgisini taşır. Yani harita penceresini sayfaya koymak, o ziyaretin harita sağlayıcısına da bildirilmesi anlamına gelir.
Gördüğü şey servise göre değişir. Yazı tipi sağlayıcısı yalnızca bağlantı bilgisini alır; canlı destek yazılımı yazışmanın tamamını, adı ve e-posta adresini alır. Bu yüzden servisleri tek torbaya koymak yerine ne aldığına göre sınıflamak gerekir.
| Servis türü | Tipik olarak aldığı | Yerelleştirilebilir mi | Karar |
|---|---|---|---|
| Dışarıdan çağrılan yazı tipi | IP, tarayıcı, sayfa adresi | Evet, dosya siteye kopyalanır | Yerelleştir |
| Analitik ve etiket yöneticisi | Bağlantı bilgisi, gezinme davranışı, cihaz | Kısmen | Tercihe bağla, listede yaz |
| Reklam ve dönüşüm kodu | Bağlantı bilgisi, davranış, kimlik eşleme | Hayır | Yalnızca reklam veriyorsan tut |
| Harita ve gömülü video | Bağlantı bilgisi, oynatma bilgisi | Kısmen, tıklamayla yüklenir | Tıklanınca yüklenecek biçimde kur |
| Canlı destek ve sohbet kutusu | Yazışma içeriği, ad, e-posta, sayfa geçmişi | Hayır | Aktarım listesine yaz |
| Form ve bülten eklentisi | Formda istenen bütün alanlar | Hayır | Aktarım listesine yaz |
Sitede hangi servisler var, nasıl listelenir?
Envanteri hafızadan çıkarmak işe yaramaz; çünkü servislerin bir kısmı tema ya da eklenti tarafından sessizce eklenmiştir. Üç yoldan bakmak gerekir:
- Tarayıcının geliştirici araçları: ağ sekmesini açıp sayfayı yenileyin ve istekleri alan adına göre gruplayın. Kendi alan adınız dışında kalan her satır bir üçüncü taraftır. Bu yöntem gerçekte ne yüklendiğini gösterir, dolayısıyla en güvenilir olanıdır.
- Sayfa kaynağı: betik ve çerçeve etiketlerinde dışarıya işaret eden adresleri arayın. Özellikle alt menüye ya da ortak şablona gömülmüş kodlar burada görünür.
- Panel tarafı: kurulu eklentilerin listesi, hangi servisin niye eklendiğini açıklar. Kimsenin hatırlamadığı bir eklenti genellikle kaldırılabilecek olandır.
Listeyi çıkarırken her satırın yanına iki not düşün: bu servis neden var ve kim istemiş. Cevabı olmayan satır, envanterin en kolay temizlenen kısmıdır.
Hangisi kalır, hangisi yerelleşir, hangisi kalkar?
Karar üç başlıkta toplanır:
- Kalır: işletmenin gerçekten kullandığı araçlar. Analitik raporu okunuyorsa kalır; kurulup bir daha bakılmadıysa kalkar.
- Yerelleşir: yazı tipi, simge seti ve dışarıdan çağrılan kütüphaneler çoğu zaman siteye kopyalanabilir. Bu hem bir veri akışını kapatır hem de sayfanın dış sunucuya bağlı kalmasını önler. Sayfa hızına etkisini Core Web Vitals yazısında anlattık.
- Kalkar: eski bir kampanyadan kalan reklam kodu, denenip bırakılmış sohbet kutusu, artık kullanılmayan ısı haritası aracı. Bunlar hem veri akıtır hem de sayfayı yavaşlatır.
Harita ve video gibi gömülü pencereler için orta bir yol var: pencereyi sayfa açılışında değil, ziyaretçi üzerine tıkladığında yüklemek. Böylece hiç haritaya bakmayan ziyaretçinin bağlantı bilgisi dışarı gitmez.
Üçüncü taraf kod aynı zamanda bir güvenlik kapısı
Konunun az konuşulan tarafı şu: dışarıdan çağrılan bir betik, sizin sayfanızın içinde sizin yetkinizle çalışır. O dosyanın içeriği sağlayıcı tarafında değişirse, siz hiçbir şey yapmadan sitenizin davranışı değişir. Bu yüzden listedeki her satır bir bakım sorumluluğu da getirir: sağlayıcı kim, dosya hangi adresten geliyor, o hizmet hâlâ yaşıyor mu.
Terk edilmiş bir eklentinin ya da kapanmış bir servisin adresi bir gün başkasının eline geçebilir ve o adresten gelen kod artık sizin istediğiniz kod olmaz. Pratik karşılığı net: kullanılmayan dış çağrılar kaldırılır, kalanlar da mümkün olduğunda siteye kopyalanır. Site güvenliğinin diğer başlıkları için hacklenen siteyi temizleme yazısına bakabilirsiniz.
Envanteri belgeye bağlamak
Çıkardığınız liste iki yerde karşılık bulur. Birincisi aydınlatma ve gizlilik metinlerindeki aktarım bölümü: orada sayılmayan bir servis, metni eksik bırakır. İkincisi çerez tercih kutusu: zorunlu olmayan servislerin tercih verilmeden yüklenmemesi gerekir. İki metnin işini gizlilik politikası mı aydınlatma metni mi yazısında, kutunun kurulumunu çerez izni kutusu yazısında ayırdık.
Envanteri bir kere çıkarıp bırakmak da işe yaramaz. Tema güncellemesi, yeni bir eklenti ya da pazarlama tarafının eklediği bir kod listeyi bir gecede değiştirebilir. Bu yüzden kontrol, aylık bakım kontrol listesinin bir satırı olmalı.
Kısa kontrol listesi
- Sayfa açıldığında kendi alan adınız dışına giden istekler listelendi mi?
- Her satırın yanında "neden var" ve "kim istedi" notu var mı?
- Yazı tipi ve kütüphaneler siteye kopyalandı mı?
- Kullanılmayan reklam, ısı haritası ve sohbet kodları kaldırıldı mı?
- Harita ve video pencereleri tıklanınca mı yükleniyor?
- Listedeki her servis aydınlatma metninin aktarım bölümünde yazılı mı?
- Zorunlu olmayan servisler tercih verilmeden yüklenmiyor mu?
DigiWSS, işletme sitelerinde bu dökümü çıkarıp gereksiz dış bağımlılıkları kaldırır; kalanları da metinlerle ve tercih kutusuyla tutarlı hâle getirir.