HTTP 304 Not Modified başlıkları Googlebot bütçesinden nasıl tasarruf sağlar

HTTP 304 Not Modified başlığı Googlebot’a talep edilen sayfanın önceki ziyaretten bu yana değişmediğini bildirir ve bu, botun tüm yanıt gövdesini indirmekten kaçınmasına olanak tanır. Bu durum kodunu kullanarak sunucunuz, Google dizininde saklanan mevcut sürümün güncel kaldığını doğrular. Bu iletişim, hem web sitesi sahibi hem de Google arama altyapısı için önemli miktarda bant genişliği ve sunucu işlem gücü tasarrufu sağlar.

Bir web sitesini verimli bir şekilde yönetmek, botların sunucu donanımınızla nasıl etkileşime girdiğini net bir şekilde anlamayı gerektirir. Googlebot bir sayfayı talep ettiğinde, içeriğin hala alakalı olduğunu doğrulamak için her zaman tam HTML dosyasını almasına gerek yoktur. 304 durum kodu, sayfa durumunun son belgelenen tarama ile aynı kaldığını doğrulayan hafif bir doğrulama sinyali görevi görür. Bu protokolü doğru bir şekilde uygulamak, yüksek performanslı web mimarisini korumak için standart bir uygulamadır.

HTTP 304 Not Modified başlıkları Googlebot bütçesinden nasıl tasarruf sağlar

Googlebot neden 304 durum kodunu kontrol eder?

Googlebot her alan adı için özel bir tarama bütçesi ile çalışır, bu da botun sitenize ayırdığı zaman ve kaynak miktarını temsil eder. Sunucunuz içerik aynı olduğunda 304 durum kodu döndürecek şekilde yapılandırılmışsa, bot tüm sayfa gövdesini yeniden işlemesine gerek olmadığını anlar. Bu, botun dizine hiçbir değer katmayan gereksiz görevleri gerçekleştirmesini önler.

Tipik bir hesapta, sunucu her istek için tam indirmeyi zorunlu kılarsa teknik yük hızla artabilir. 304 yanıtı vererek sunucu ağ üzerinden aktarılan veri miktarını en aza indirir. Bu verimlilik, botun sınırlı zamanını aylarca, hatta yıllarca değişmeden kalan statik dosyaları tekrar dizine eklemeye değil, yeni sayfaları keşfetmeye veya önemli güncellemeleri belirlemeye harcamasını sağlar.

Koşullu istek süreci nasıl çalışır?

Mekanizma iki özel HTTP başlığına dayanır: If-Modified-Since ve ETag. Googlebot daha önce ziyaret ettiği bir sayfayı talep ettiğinde, istek başlıklarına son ziyaret tarihini veya ETag tanımlayıcısını dahil eder. Bu, sunucunun kaynağın mevcut sürümünü arama motoru tarafından daha önce görülen sürümle karşılaştırmasına olanak tanır.

HTTP 304 Not Modified başlıkları Googlebot bütçesinden nasıl tasarruf sağlar — 2
  • Googlebot, son önbelleğe alınmış sürümün zaman damgasını içeren ‘If-Modified-Since’ başlığını içeren bir istek gönderir.
  • Sunucunuz dosyanın değiştirilme tarihini bu zaman damgasıyla kontrol eder.
  • Dosya değişmediyse, sunucu yanıt gövdesi olmadan 304 durum kodu döndürür.
  • Googlebot içeriğin güncel olduğunu doğrular ve kuyruğundaki bir sonraki URL’ye geçer.

Sunucu bir ETag eşleşmesi algıladığında, tüm belgeyi yeniden oluşturmak veya yeniden getirmek gibi ağır işlerden kaçınır. Bunun yerine, kısa bir HTTP yanıt başlığı gönderir. Bu el sıkışma, tam belge aktarımına kıyasla son derece hızlıdır ve her tarama olayı için gecikmeyi önemli ölçüde azaltır. Bu, barındırma ortamınız ile Google’ın veri merkezleri arasındaki iletişimi optimize etmek için temel bir yöntemdir.

Doğru 304 uygulamasının faydaları nelerdir?

304 başlıklarına doğru bir şekilde hizmet vermek sunucu yükünü ve gecikmeyi azaltır. Sunucunuz her bir tarama isteği için tam HTML, CSS veya JavaScript oluşturmak zorunda olmadığında, bellek ve CPU döngülerinden tasarruf eder. Bu, arşiv bölümleri veya politika sayfaları gibi günlük olarak değişmeyen binlerce sayfası olan geniş ölçekli web siteleri için özellikle yararlıdır.

Ayrıca, istek başına indirilen toplam bayt miktarını azaltmak daha hızlı tarama döngülerine yol açabilir. Sunucunuz şu anda tarama patlamaları sırasında yüksek trafik seviyeleriyle mücadele ediyorsa, 304 yanıtları bir basınç tahliye vanası görevi görebilir. Bu durum kodlarına hizmet vererek, Googlebot’un görevini daha hızlı bitirmesine olanak tanırsınız, bu da bant genişliğinizin daha verimli kullanılmasına ve gerçekten önemli olan sayfalar için potansiyel olarak daha yüksek tarama sıklığına yol açar.

Google, tarama sürecinin her iki ucunda da kaynaklardan tasarruf etmek için modern protokoller kullanır.

Google Search Central

Alien Road bu teknolojiyi nasıl uygular

Alien Road’da, Googlebot’un uygun yerlerde 304 durum kodlarını almasını sağlamak için derinlemesine sunucu log analizi gerçekleştiriyoruz. Sunucu yapılandırmanız veya uygulama çerçeveniz içindeki ‘If-Modified-Since’ ve ‘ETag’ mantığını gözden geçirerek başlıyoruz. Tipik bir e-ticaret müşterisi için, statik ürün açıklaması sayfalarının sunucunun son değiştirilme tarihini doğru bir şekilde doğrulamaması nedeniyle gereksiz yere tekrar tarandığını sıklıkla görüyoruz.

Sürecimiz, Googlebot isteklerinin simülasyonu sırasında sunucu yanıt başlıklarının denetlenmesini içerir. Sunucunun bot tarafından gönderilen koşullu başlıkları uygun şekilde değerlendirip değerlendirmediğini kontrol ediyoruz. Sunucunun değişmeyen dosyalar için bile her bir istek için 200 OK döndürdüğünü tespit edersek, başlıkların doğru gönderilmesini sağlamak için sunucu tarafında ayarlamalar yapıyoruz.

  • Statik varlıklardaki yüksek frekanslı tarama modellerini belirlemek için sunucu erişim loglarını gözden geçirin.
  • ETag oluşturmanın etkinleştirildiğini ve dosya sürümleriyle doğru bir şekilde eşleştiğini doğrulayın.
  • Değişmeyen dosyalar için 304 yanıtlarının döndürüldüğünden emin olmak için cURL gibi araçları kullanarak sunucu yanıtlarını test edin.
  • Günlük indirilen toplam bayt miktarındaki azalmayı doğrulamak için Google Search Console tarama istatistiklerini izleyin.

304, 200 OK yanıtından daha mı iyidir?

200 OK yanıtı, sunucunun sayfanın içeriğini başarıyla teslim ettiğini gösterir, bu da tam veri aktarımı gerektirir. Buna karşılık, 304 yanıtı tam aktarımı önleyen hafif bir sinyaldir. 200 yanıtı yeni veya güncellenmiş içerik için gerekli olsa da, 304 yanıtı statik sayfalar için ideal sonuçtur, çünkü kaynak yükü olmadan tazeliği doğrular.

Bu yanıtlar arasında seçim yapmak bir tercih meselesi değil, protokol doğruluğu meselesidir. İçerik gerçekten değiştiğinde 304 sunarsanız, Googlebot önbelleğindeki eski sürümü kullanmaya devam edecektir. Bu yüzden sunucu yapılandırmanızı test etmek herhangi bir teknik denetimin temel bir parçasıdır. Amaç, arama motoruna en doğru bilgiyi mümkün olduğunca hızlı bir şekilde sağlamaktır.

Bu hafta nereden başlamalı

Tarayıcınızın geliştirici araçlarındaki Ağ (Network) sekmesini kullanarak en sık taranan sayfalarınızın başlıklarını kontrol ederek başlayın. Yanıtta ‘ETag’ veya ‘Last-Modified’ başlıklarını arayın. Bu başlıklar eksikse, sunucunuz koşullu istekleri düzgün bir şekilde desteklemiyor olabilir ve Apache veya Nginx gibi web sunucusu yapılandırmanızı bu ayarları içerecek şekilde güncellemelisiniz.

Başlıkların gönderildiğini doğruladıktan sonra, önümüzdeki birkaç gün boyunca sunucu loglarınızı takip edin. Logları Googlebot kullanıcı aracıları için filtreleyin ve 304 yanıt kodlarında bir artış olup olmadığını arayın. Bu, sunucunuzun botla başarılı bir şekilde iletişim kurduğunun ve kaynaklarınızı gerçekten ihtiyaç duyulduğunda koruduğunun net bir göstergesidir.

Paylaş