robots.txt, arama motoru botlarının bir siteyi taramaya başlamadan önce okuduğu, kök dizindeki basit bir metin dosyasıdır. Görünüşteki sadeliğine rağmen, resmi bir standarda kavuşması neredeyse otuz yıl sürdü: 1994'te gayriresmi bir kural olarak ortaya çıktı ve ancak Eylül 2022'de IETF tarafından RFC 9309 olarak resmen standartlaştırıldı.
User-agent, Disallow ve Allow direktifleri
Dosya bloklardan oluşur; her blok User-agent: satırıyla başlar, ardından yasak ve izinli yolları belirten Disallow ile Allow direktifleri gelir. Bot, kendi adıyla eşleşen ilk bloğun kurallarını uygular; eşleşme yoksa genel User-agent: * bloğuna döner.
RFC 9309 pratikte neyi netleştirdi
2022'den önce her tarayıcı uç durumları kendi kafasına göre yorumluyordu: dosyanın maksimum boyutu, çelişen kurallar karşısında ne yapılacağı, tanınmayan bir direktifin yok sayılıp sayılmayacağı gibi konular belirsizdi. RFC 9309 bu ayrıntıları kesinleştirdi; örneğin dosya için 500 kibibaytlık bir üst sınır tanımlar ve tanınmayan satırların basitçe atlanmasını, dosyanın tamamının reddedilmemesini şart koşar.
Sitemap: zorunlu değil ama işe yarıyor
Sitemap: direktifi, sitemap.xml dosyasının nerede olduğunu arama motoruna bildirir. Zorunlu değildir, ama kullanışlıdır: bot site haritasının yolunu tahmin etmek ya da yalnızca arama konsoluna kayıtlı olmasına güvenmek zorunda kalmaz.
Bu doğrulama neden önemli
- Yayınlamadan önce robots.txt sözdizimini kontrol etmek, küçük bir yazım hatasının tüm siteyi taramadan yanlışlıkla dışlamasını önler.
- Farklı bloklar arasındaki çelişen kuralların önemli bölümleri istemeden gizlemediğini doğrulamak için kullanılır.
- Belirli bir user-agent ve yol kombinasyonunu, bir sonraki taramayı beklemeden anında test etmeye yarar.
Disallow bir sayfayı arama sonuçlarından neden gizlemez
En yaygın karışıklık budur: Disallow, bir botun sayfa içeriğini taramasını engeller, ama o URL'nin dizine eklenmesini engellemez. Başka, zaten dizine eklenmiş bir site engellenen sayfaya bağlantı veriyorsa, Google içeriği hiç taramamış olsa da URL'yi açıklamasız şekilde sonuçlarda gösterebilir.