Robots.txt Testi, bir web sitesinin kurallarının seçilen tarama botuna belirli bir URL’yi isteme izni verip vermediğini kontrol eder. Canlı dosyayı test edin veya bir taslak yapıştırın; ardından eşleşen grubu, yönergeyi ve satırı inceleyin. Sonuç, bu kurallar kapsamındaki tarama iznini açıklar; botun sayfayı ziyaret ettiğini veya URL’nin dizine eklendiğini doğrulamaz.
Robots.txt kaynağını ve URL’yi seçin
Web sitenizin şu anda sunduğu herkese açık dosyayı okumak için Canlı site modunu kullanın. https://example.com adresini, /products/item yolunu ve kontrol etmek istediğiniz botu girin. Screpy /robots.txt dosyasını ister; test edilen sayfayı getirmez ve sitenin tamamını taramaz.
Henüz yayınlanmamış bir taslak için Robots.txt yapıştır modunu kullanın. Yapıştırılan metin, yüklenmeden tarayıcınızda analiz edilir. Testin hedef URL’yi oluşturabilmesi için web sitesi adresini bağlam olarak girin.
Protokolü ve alan adını doğru girin: https://example.com, http://example.com ve https://www.example.com farklı kaynak adresleridir. Yalnızca alan adı girildiğinde HTTPS kullanılır. Tam test URL’si, web sitesi girdisiyle aynı kaynağa ait olmalıdır; yol ise bu adrese göre tamamlanır. / testi yalnızca ana sayfa yolunu kontrol eder. Başka bir URL’yi kontrol ederken gerçek büyük-küçük harf kullanımını ve sorgu parametrelerini koruyun.
Hazır bir bot seçin veya tam tarayıcı user-agent başlığı yerine ExampleBot gibi özel bir ürün belirteci girin.
Robots.txt test sonucunu okuyun
Durumu, özellikle eşleşen grup ve vurgulanan satır olmak üzere, dayandığı bilgilerle birlikte okuyun.
| Durum | Anlamı | İncelenecek bilgi |
|---|---|---|
| İzin verildi — yeşil | Eşleşen bir Allow kuralı bu URL’ye izin verir. |
Geçerli yönerge ve satır. |
| Engellendi — kırmızı | Eşleşen bir Disallow kuralı bu URL’yi engeller. |
Yolun ve botun amaçladığınız seçimler olup olmadığı. |
| Varsayılan olarak izin verildi — mavi | Bu URL’yi kısıtlayan geçerli bir yol kuralı yoktur. | Seçilen grup ve kullanılabilir bir canlı dosya dönüp dönmediği. |
| Belirlenemedi — sarı | Canlı kontrol bir kural kararı verememektedir. | Kaynak yanıtı veya dosyayı getirme uyarısı. |
Canlı kontrolde önce robots.txt URL’sini ve HTTP durumunu inceleyin. Bu araç, 404, 403 ve 429 dışındaki diğer 4xx yanıtlarını yayınlanmış kısıtlama yokmuş gibi değerlendirir. Hız sınırlaması, sunucu hatası veya çözülemeyen yönlendirme kararı belirsiz bırakır; zaman aşımı ise sonuç yerine hata gösterebilir. Bunlar açık bir Disallow kuralını kanıtlamaz. Gerçek botlar önbellekteki bir dosyayı kullanabilir veya hataları farklı ele alabilir; Google kendi yanıt kurallarını belgelendirir.
Beklenmedik bir varsayılan sonuca güvenmeden önce ayrıştırma uyarılarını inceleyin. Yanlış yazılmış yönerge veya eksik iki nokta, amaçlanan kuralın kullanılmamasına neden olabilir. Screpy en fazla ilk 500 KiB’yi işler ve içeriğin kesildiğini belirtir. İçerik kesilmişse karar işlenen bölüm için geçerlidir; sonraki kurallar kontrol edilmemiştir.
Hangi robots.txt kuralının geçerli olduğunu anlayın
Bota özel grup, User-agent: * grubundan önceliklidir; bu iki grubun kuralları birlikte devralınmaz. Geçerli grup içinde en uzun eşleşen yol kuralı kazanır. Aynı ayrıntı düzeyindeki Allow ve Disallow kuralları eşleşirse Allow kazanır. Aynı özel bot için eşleşen gruplar birleştirilebilir; bu nedenle tekrarlanan grupları da inceleyin. Bu ilkeler Robot Dışlama Protokolü’nde açıklanır.
Bu örnek politikayı yapıştırıp aşağıdaki testleri karşılaştırın:
User-agent: *
Disallow: /private/
Allow: /private/help/
User-agent: Googlebot
Disallow: /preview/
| Bot | Test edilen yol | Beklenen sonuç | Neden |
|---|---|---|---|
| Bingbot | /private/report |
Engelli | Genel /private/ kuralı eşleşir. |
| Bingbot | /private/help/guide |
İzinli | Daha uzun /private/help/ istisnası kazanır. |
| Googlebot | /private/report |
Varsayılan olarak izinli | Özel grubunda eşleşen kural yoktur; genel engel devralınmaz. |
| Googlebot | /preview/page |
Engelli | Özel /preview/ kuralı eşleşir. |
Örnek, güvenli bir özel alanı değil, kural eşleşmesini gösterir. Yollar büyük-küçük harfe duyarlıdır: /Private/ ve /private/ farklıdır. Yol desenlerinde * bir karakter dizisini eşleştirir, $ ise sonu işaretler. Örneğin Disallow: /*.pdf$, /guide.pdf ile eşleşir ama /guide.pdf?download=1 ile eşleşmez. Yakın URL çeşitlerinin aynı sonucu vereceğini varsaymak yerine kullandığınız tam URL’yi test edin.
Arama ve yapay zekâ botlarını ayrı test edin
Seçilen ürün belirteci hangi kuralların uygulanacağını değiştirir. Konu arama motoru taramasıysa Googlebot ve Bingbot’u ayrı kontrol edin. Yapay zekâ botlarında tek bir kuralın hepsini kapsadığını varsaymak yerine arama, model eğitimi ve kullanıcı isteğiyle dosya getirme amaçlarını ayırın.
Örneğin OAI-SearchBot, ChatGPT aramasına hizmet ederken GPTBot, model eğitiminde kullanılabilecek içerikleri tarar. ChatGPT-User bazı kullanıcı tarafından başlatılan işlemleri yürütür ve OpenAI’ın bot belgelerine göre robots.txt kuralları bu isteklere uygulanmayabilir.
Hazır bot seçmek, o belirteci dosyadaki kurallara göre değerlendirir. Canlı kontrol seçilen botun kimliğini taklit etmez, isteklerini doğrulamaz veya gösterilen politikaya uyduğunu kanıtlamaz. Kullanıcının tetiklediği bir belirteç için engelli sonucu, kural yorumudur; isteklerin duracağını garanti etmez.
Kuralı düzeltip canlı dosyayı yeniden test edin
İlgili kuralda mümkün olan en küçük değişikliği yapın; ardından hem amaçlanan kısıtlamayı hem korumak istediğiniz istisnayı kontrol edin.
- Mevcut dosyayı yapıştırma moduna kopyalayın ve aynı URL ile botu kullanarak beklenmedik sonucu yeniden oluşturun.
- Eşleşen yönergeyi veya grubu düzeltin. Etkilenen yolu ve izinli ya da engelli kalması gereken yakın bir URL’yi test edin.
- İlgili her bot için tekrarlayın. Başarılı bir Googlebot kontrolü, Bingbot veya GPTBot sonucunu ortaya koymaz.
- Dosyayı kendi web sitenizde yayınladıktan sonra canlı moda geçip kontrolleri tekrarlayın. Dönen dosyanın ve eşleşen satırın değişikliği yansıttığını doğrulayın. Araçtan alınan güncel yanıt, gerçek botun önbellekteki kopyasını yenilediğini kanıtlamaz.
Amaç arama sonuçlarından kaldırmaksa Disallow tek başına yeterli değildir. Google’ın noindex yönergesini okuyabilmesi için sayfayı tarayabilmesi gerekir. Gizli içeriği robots.txt ile değil, kimlik doğrulamayla koruyun. Google, tarama engellemenin sınırlarını açıklar.
Rapor Sitemap: bildirimlerini de listeler; bir adresin bulunması XML’ini doğrulamaz veya dizine eklenmeyi kanıtlamaz. Ayrı kontrol için adresi Sitemap Kontrolü’nde açın. Bot erişimi doğruysa ama sayfa hâlâ araştırılmalıysa sayfa düzeyindeki SEO sinyallerini incelemek için Sayfa İçi SEO Kontrolü’nü kullanın.
Noindex Kontrolü: Sayfanın HTML ve HTTP başlıklarındaki noindex talimatını bulun. Kaynağını ve Google web aramasına uygulanıp uygulanmadığını görün.
AI Bot Erişim Testi: Yalnızca robots.txt kuralları kontrol edilir. Gerçek bot erişimi, indeksleme veya kaynak gösterilmesi doğrulanmaz.