Kısa cevap
robots.txt, tarayıcı botlara bir sitedeki hangi yolların taranabileceğini bildiren dosyadır.
Nerede işine yarar?
Botun bu kuralları izlemesi ve dosyayı okuyabilmesi gerekir. Özel verileri korumak için erişim kontrolü kullanılır; robots.txt gizli dosya kasası değildir. Tarama engeli ile bir URL’nin arama sonuçlarına eklenmesini engellemek farklı kararlardır.
Tanımdan uygulamaya, kendi denemene.
Bir cümlede uygulaması
İç API yollarını taramadan ayırırken indexlenebilir yazılara erişimi açık tutmak.
Neyle karıştırılmamalı?
Bir yolu robots.txt ile engellemek o URL’nin bütün arama sonuçlarından kesin silinmesini sağlamaz.
Kapıdaki yön tabelası, kapının kilidi değildir.
Bir web sitesinde halka açık yazılar, arama sonuçları, API yolları ve yönetim ekranları bulunabilir. Tarayıcı robotların bu alanlarla nasıl karşılaşacağı aynı değildir. Robots.txt, uyumlu robotlara hangi URL alanlarını taramaları veya taramamaları gerektiğini bildiren dosyadır. Site kökünde bulunur ve kurallar belirli kullanıcı aracı gruplarına uygulanabilir. Bir güvenlik duvarı veya kullanıcı doğrulaması olarak düşünülmemelidir; adresi bilen bir kişiyi durdurmaz.
Örneğin site içi arama yüzlerce parametreli sonuç adresi üretiyor olabilir. Bu yolların taranmasını sınırlamak, önemli içeriklerin keşfine ayrılan kaynakları daha anlamlı kullanmaya yardımcı olabilir. Fakat hangi adreslerin gerçekten gereksiz olduğu içerik mimarisine bağlıdır. Bütün parametreleri tek hamlede engellemek, anlamlı filtre sayfalarını veya gerekli kaynakları da etkileyebilir. Kural yazmadan önce gerçek URL örnekleri ve sayfa görevleri incelenir.
En kritik ayrım tarama ile dizine eklenme arasındadır. Bir URL'nin taranmasının engellenmesi, o adresin hiçbir arama sonucunda görünmeyeceği anlamına gelmez. Başka kaynaklardan keşfedilen adresler içerikleri alınmadan da bilinebilir. Sayfa üzerindeki noindex bilgisinin görülebilmesi ise robotun o sayfaya erişmesine bağlı olabilir. Bu nedenle robots.txt ile noindex aynı düğmenin iki farklı adı gibi kullanılmaz.
Bir başka ayrım robot türleridir. Arama dizini oluşturan bot, bağlantı önizlemesi getiren bot ve bir yapay zekâ hizmetiyle ilişkili bot farklı amaçlara sahip olabilir. Her hizmetin yayınladığı kimlik ve davranış bilgisi kendi kaynağından incelenmelidir. Bir kullanıcı aracı adını tahmin ederek kural eklemek veya bütün yapay zekâ sistemlerinin aynı politikayı uyguladığını varsaymak yanlış beklenti yaratır. Dosyanın sınırı, ona uyan istemcilerin davranışıyla ilgilidir.
Kural değişikliklerinde eski ve yeni örnek adresleri yan yana yazmak faydalıdır. Örneğin yalnız site içi aramayı sınırlamak isterken bütün sözlük yollarını kapsayan bir eşleşme oluşturulabilir. Dosyanın kısa olması etkisinin küçük olduğu anlamına gelmez. Ortak bir şablondan üretiliyorsa değişikliğin hangi alan adlarına yayıldığını da bilmek gerekir. Birden fazla ortam veya alt alan adı kendi dosyasına sahip olabilir. Tek bir kök dosyanın bütün internet varlığını yönettiğini varsayma. Tarama tercihlerinin yayın sorumlusu belli olduğunda, yeni bir entegrasyonun dosyaya sessizce eklediği geniş kurallar daha kolay fark edilir ve amacı açıklanabilir.
Tarama kuralı ile gizlilik sınırı birbirine karışmasın.
Robots.txt
Uyumlu robotlara tarama tercihini bildirir. Dosya herkese açık olduğu için içindeki yollar da görülebilir. Bir robotun kurala uyması beklenir, ancak bu teknik olarak bütün istemcileri engelleyen bir yetkilendirme sistemi değildir. Özel verilerin korunması bu dosyaya bırakılamaz.
Erişim kontrolü
Kimlik doğrulama, yetkilendirme ve sunucu tarafındaki kurallar içeriğe kimin ulaşabileceğini belirler. Kullanıcı veya istemci gerekli yetkiye sahip değilse içerik verilmez. Yönetim paneli, özel belge veya hesap verisi için gereken sınır budur. Bir adresi robots.txt içinde listelemek onu gizli hâle getirmez.
Tarama kuralını doğru kapsamda yazmak
Robots kuralları düzenlenirken bütün siteyi etkileyen bir desenin yanlışlıkla önemli içeriği kapatmadığı kontrol edilir. Özellikle test ortamından üretime taşınan ayarlar risk yaratabilir. Sayfanın taranması, indekslenmesi ve kullanıcının ona erişebilmesi farklı konulardır.
- Önemli URL'leri kural desenlerine karşı dene.
- CSS ve gerekli görsel kaynaklarının erişimini kontrol et.
- Özel içerik için gerçek kimlik doğrulama kullan.
Noindex yerine robots engeli kullanılabilir mi?
Aynı işi yapmazlar. Arama motorunun sayfadaki noindex bilgisini okuyabilmesi için çoğu durumda sayfaya erişmesi gerekir. Tarama engeli uygulanırken URL'nin sonuçlardan kaldırılacağı varsayılmamalıdır.
İşin içinde sorulacaklar.
Bir sayfayı arama sonuçlarından kaldırmak için yeterli mi?
Genellikle bu amaçla tek başına robots.txt kullanılmaz. Tarama engeli ile dizinde görünmeme isteği farklıdır. Uygun noindex, erişim kısıtlaması veya kaldırılmış içerik durum kodu gibi seçenekler sayfanın gerçek durumuna göre değerlendirilir. Özellikle noindex'in okunması gerekiyorsa taramayı engellemenin etkisini düşünmek gerekir. Yöntemi seçmeden önce sayfanın herkese açık kalıp kalmayacağını netleştir.
Geliştirme ortamını bununla koruyabilir miyim?
Geliştirme veya önizleme ortamında özel bilgiler varsa gerçek erişim kontrolü gerekir. Robots.txt keşfi sınırlamaya yardımcı bir tercih olabilir, fakat gizlilik garantisi sağlamaz. Ayrıca geliştirme ortamındaki engelleme kuralının yanlışlıkla üretime taşınması halka açık sitenin taranmasını etkileyebilir. Ortamların yapılandırmasını açıkça ayırmak ve yayın öncesi hangi kuralın nereye gittiğini bilmek önemlidir.
Bütün botlara tek kural vermek doğru mu?
Basit sitelerde genel kurallar yeterli olabilir; farklı amaçlar için farklı tercihler de gerekebilir. Bu karar yayın politikasıyla birlikte alınır. Arama botu, sosyal önizleme istemcisi ve başka bir veri toplayıcı aynı hizmeti sunmaz. Belirli bir bot için kural yazılacaksa resmî kullanıcı aracı bilgisine bakılır. Tanınmayan bir adı eklemek gerçek istemcinin davranışını değiştirmeyebilir.
Dosyaya site haritası adresi eklenebilir mi?
Site haritasının konumu robots.txt içinde bildirilebilir. Bu, haritadaki bütün URL'lerin mutlaka taranacağı veya dizine ekleneceği anlamına gelmez. Harita keşif için ek bir yol sunar; tarama kuralları ve sayfa durumları yine ayrı değerlendirilir. Bir tarafta adresi önerip diğer tarafta erişimi engelleyen çelişkilerden kaçınmak gerekir. Dosyalar aynı yayın politikasını anlatmalıdır.
Dört kapı, dört farklı karar.
Bir sitedeki yazı, site içi arama, API ve yönetim ekranını ele al. Her yol için herkese açık olma, taranma ve arama sonucunda görünme beklentilerini ayrı yaz. Tek bir engelleme listesiyle başlamamaya çalış.
Robots.txt bir tarama anlaşmasıdır. Gizlilik, dizin tercihi ve erişim yetkisini ayrı düşündüğünde doğru aracı doğru yerde kullanırsın.
Bağlantılı kavramlar
- Canonical URLCanonical URL, benzer veya yinelenen içerik sürümleri arasında tercih edilen ana adresi belirtir.
- Site haritasıSite haritası, bir sitedeki önemli URL’leri ve uygun güncelleme bilgilerini arama motorlarına bildiren keşif dosyasıdır.
- SEOSEO, arama motorlarının içeriği bulmasını ve anlamasını, kullanıcıların da ilgili sayfayı keşfetmesini destekleyen iyileştirmelerdir.

