Crawl-delay direktifi, bir web sitesinin robots.txt dosyası içinde yer alan ve arama motoru tarayıcılarına, özellikle Yandexbot’a, art arda gelen istekler arasında belirlenen sayıda saniye beklemelerini bildiren bir komuttur. Web yöneticileri bu direktifi uygulayarak sunucu kaynaklarını daha etkin yönetir ve yoğun indeksleme dönemlerinde botun barındırma altyapısını aşırı yüklemesini önler. Bu ayar, arama motorlarının içeriğe sürdürülebilir bir hızda erişmesini sağlamaya devam ederken insan ziyaretçiler için site hızı korunmasına yardımcı olur.
Yandex için neden crawl-delay direktifini kullanmalısınız?
Bir arama botunun sitenizi ne sıklıkla ziyaret ettiğini yönetmek, teknik bakımın önemli bir parçasıdır. Bir sunucu bottan dakikada yüzlerce istek aldığında, her bir işleme yanıt vermek için CPU döngüleri ve bellek ayırmak zorundadır. Karmaşık arka planlara veya büyük veritabanlarına sahip siteler için bu kaynak tahsisi, gerçek müşteriler için daha yavaş yanıt sürelerine yol açabilir. Yandexbot oldukça aktif olabilir ve sunucunuz yüksek eşzamanlılığı kaldıracak şekilde yapılandırılmamışsa, 503 Service Unavailable hatalarında bir artış görebilirsiniz.

Yüksek tarama sıklığı genellikle yeni içeriğin hızlı bir şekilde indekslenmesi için iyidir. Bununla birlikte, sitenin kararlılığı daha önemlidir. Sunucu çökerse veya önemli ölçüde yavaşlarsa kullanıcı deneyimi zarar görür, bu da sıralamalarınızı dolaylı olarak etkileyebilir. Bir gecikme kullanarak, sunucunun bot istekleri arasında nefes almasını sağlayan bir tampon oluşturursunuz. Bu, özellikle sınırlı kaynaklara sahip paylaşımlı barındırma veya VPS planlarında çalışan siteler için çok faydalıdır.
Sunucuların birden fazla bottan gelen eşzamanlı isteklerle mücadele ettiğini sıklıkla görüyoruz. Yandexbot için belirli bir gecikme ayarlamak, indeksleme sürecini tamamen durdurmadan bu artışları önler. Kararlılığı sağlamanın basit ama etkili bir yoludur.
Alien Road SEO ekibi
Robots.txt dosyasında crawl-delay direktifi nasıl biçimlendirilir
Bu direktifin sözdizimi basittir, ancak tanınması için robots.txt dosyanızın doğru bölümüne yerleştirilmelidir. Yandex bu talimatı özellikle User-agent: Yandex veya User-agent: * blokları altında arar. Değer, botun bir önceki istek bittikten sonra yeni bir isteğe başlamadan önce beklemesi gereken saniye sayısını temsil eder.

- Direktifi robots.txt dosyası içinde kendi satırına yerleştirin.
- İki nokta üst üste, ardından bir boşluk ve sayısal değeri kullanın.
- Değerin, motor destekliyorsa bir tam sayı veya ondalık sayı olduğundan emin olun.
- Daha iyi kontrol için direktif belirli bir User-agent bloğunun parçası olmalıdır.
- Ayrıştırıcının kafasını karıştırabilecek çelişkili Allow veya Disallow kurallarının olmadığını doğrulayın.
Örneğin, Yandexbot’un istekler arasında 5 saniye beklemesini istiyorsanız dosyanız şöyle görünür: Sonraki satırda User-agent: Yandex ve ardından Crawl-delay: 5. Bu, bota her beş saniyede yalnızca bir istek yapabileceğini söyler. Sitenizde 10.000 sayfa varsa, tüm siteyi taramak daha uzun sürer, ancak sunucunuzdaki yük sürekli olarak düşük kalır.
Yandex gecikmeler için kesirli değerleri destekler mi?
Birçok web yöneticisi 1, 2 veya 10 gibi tam sayıları kullanırken, Yandex belgeleri kesirli değerlerin de kabul edilebilir olduğunu göstermektedir. Örneğin, 0.5 değeri yarım saniyelik bir gecikme anlamına gelir ve saniyede iki isteğe izin verir. Bu, tam bir saniyeden daha agresif bir ayardır, ancak yine de tek bir milisaniyede tam bir istek selini önleyebilecek küçük bir boşluk sağlar.
Doğru dengeyi bulmak için farklı değerleri test etmeye değer. Çok uzun bir gecikme, en yeni blog yazılarınızın veya ürün güncellemelerinizin arama sonuçlarında görünmesinin haftalar sürebileceği anlamına gelebilir. Tersine, çok kısa bir gecikme sunucu performans sorunlarınızı çözmeyebilir. Çoğu orta ölçekli web sitesi, 0.5 ile 2.0 arasındaki bir değerin ihtiyaçları için iyi çalıştığını görür.
Alien Road crawl-delay direktifini nasıl uygular
Tipik bir çalışmada ekibimiz, sunucu günlüklerini ve arama konsollarında sağlanan tarama istatistiklerini inceleyerek başlar. Bot etkinliğinin yüksek bellek kullanımı veya kullanıcılar için artan gecikme süresi ile ilişkili olduğu kalıpları ararız. Alien Road, bir gecikmenin gerekli olup olmadığını veya sunucunun sadece daha iyi önbelleğe almaya mı ihtiyacı olduğunu belirlemek için veriye dayalı bir yaklaşım kullanır.
- Adım 1: Yandexbot isteklerinin zirve sıklığını belirlemek için sunucu günlüklerini analiz edin.
- Adım 2: Botun sitenin hızını yavaşlatıp yavaşlatmadığını görmek için tarama sürelerini sunucu yanıt süreleri (TTFB) ile karşılaştırın.
- Adım 3: robots.txt dosyasına 2 gibi muhafazakar bir Crawl-delay değeri uygulayın.
- Adım 4: Botun temel sayfalardan ziyarete devam ettiğinden emin olmak için Yandex Webmaster’daki Tarama İstatistikleri raporunu izleyin.
- Adım 5: 14 günlük bir süre boyunca indeksleme hızına ve sunucu sağlığına bağlı olarak değeri ayarlayın.
Örneğin, lüks mallar satan bir Shopify mağazasının Yandexbot’un indekslemeye çalıştığı binlerce filtre kombinasyonu olabilir. Bu büyük bir yük oluşturabilir. Belirli bir gecikme uygulayarak, sitenin alışveriş yapanlar için hızlı kalmasını sağlarken Yandex’in en önemli ürün sayfalarını keşfetmesine de izin veriyoruz. Kullanıcı deneyimine öncelik veriyoruz çünkü yavaş bir site nihayetinde hem müşterileri hem de arama sıralamalarını kaybeder.
Bunun yerine Yandex Webmaster Araçları’nı kullanabilir misiniz?
Evet, Yandex, tarama hızını ayarlamak için Yandex Webmaster içinde grafiksel bir arayüz sağlar. Bu, ‘İndeksleme Ayarları’ menüsü altında bulunur. Araç, istenen hızı belirtmek için bir kaydırıcıyı hareket ettirmenize olanak tanır. Bu yöntem, sunucularındaki metin dosyalarını düzenlemekten rahatsız olanlar için genellikle daha kolaydır. Bununla birlikte, robots.txt direktifi sitenin kök dizininde doğrudan yer aldığından birçok teknik SEO uzmanı tarafından daha kesin kabul edilir.
Hem robots.txt’de bir direktif hem de webmaster panelinde bir değer ayarlarsanız, Yandex genellikle daha yeni ve doğrudan bir ayar olduğu için paneldeki talimata uyar. Kafa karışıklığını önlemek için tutarlı bir şekilde tek bir yöntem kullanmanızı öneririz. Sunucuyu yöneten bir geliştiriciniz varsa, robots.txt dosyası genellikle bu yapılandırma için daha iyi bir yerdir.
Direktif yararlı olsa da kaba bir araçtır. Her bot ziyaretinin gerçek işleme ağırlığını azaltmak için bunu sunucu tarafı önbelleğe alma ile birleştirmeyi tercih ediyoruz. Bu sayede bot sık sık ziyaret etse bile sunucunun o kadar çok çalışması gerekmez.
Alien Road SEO ekibi
Bu direktifle ilgili yaygın hatalar nelerdir?
Büyük bir hata, 60 saniye gibi çok yüksek bir gecikme ayarlamaktır. 60 saniyelik bir gecikme, botun günde yalnızca 1.440 sayfa tarayabileceği anlamına gelir. 500.000 sayfaya sahip büyük bir e-ticaret sitesi için tüm siteyi bir kez taramak bir yıldan uzun sürer. Bu, SEO performansınızı etkili bir şekilde yok eder. Başka bir hata, farklı botların farklı isimlere sahip olduğunu unutmaktır. Bir crawl-delay ile ‘User-agent: Googlebot’ kullanmak Yandex’i hiç etkilemez.
Sözdizimi hataları da yaygındır. Direktifi bir User-agent bloğunun dışına yerleştirmek onu geçersiz kılar. Benzer şekilde, yanlış büyük/küçük harf veya imla kullanmak — ‘Crawl-delay’ yerine ‘Crawl-speed’ gibi — Yandexbot’un kuralı tamamen göz ardı etmesine neden olur. Değişiklik yaptıktan sonra robots.txt dosyanızı kontrol etmek için her zaman bir doğrulama aracı kullanın.
Bu hafta nereden başlamalı
Sunucu kullanılabilirliği hakkında herhangi bir uyarı olup olmadığını görmek için Yandex Webmaster hesabınızı kontrol ederek başlayın. Tarama süreleri sırasında sık sık 5xx hataları görüyorsanız, bu bir gecikme uygulamanız gerektiğinin açık bir işaretidir. Yandex aracısının altına robots.txt dosyanıza basit bir Crawl-delay: 2 ekleyin. CPU yükünün dengelenip dengelenmediğini görmek için sunucu performansınızı üç gün boyunca izleyin. Herhangi bir iyileşme görmezseniz, daha derin sunucu tarafı optimizasyonlarına veya veritabanı indekslemesine bakmanız gerekebilir.