robots.txt, sitenizin kök dizininde duran ve arama motoru botlarına hangi adresleri tarayıp hangilerini taramamaları gerektiğini söyleyen düz metin dosyasıdır. Google, Bing ve çoğu yapay zekâ botu siteye girmeden önce bu dosyaya bakar. Küçük bir dosyadır ama yanlış bir satır tüm siteyi aramadan çıkarabilir. Bu rehber söz dizimini, doğru örnekleri ve 2026'da AI botları için verilmesi gereken kararları anlatır.
robots.txt nedir?
robots.txt, bir web sitesinin kök dizininde (https://site.com/robots.txt) bulunan, Robots Exclusion Protocol standardına göre yazılmış düz metin dosyasıdır. 1994'ten beri kullanılır ve 2022'de resmî internet standardı (RFC 9309) oldu. Amacı basit: botlara "şuraya girebilirsin, şuraya girme" demek.
Googlebot bir siteyi taramaya başlamadan önce bu dosyayı ister. Dosya varsa kuralları okur ve kendisine uygulanan satırlara göre davranır. Dosya yoksa (404) her yeri tarayabileceğini varsayar. Dosya sunucu hatası veriyorsa (5xx) Google ihtiyatlı davranıp taramayı geçici olarak durdurabilir; bu yüzden dosyanın var olması ve 200 dönmesi önemlidir.
robots.txt ne yapar, ne yapmaz?
| robots.txt yapar | robots.txt yapmaz |
|---|---|
| Belirli klasör ve URL kalıplarının taranmasını engeller | Sayfayı Google dizininden çıkarmaz (bunun için noindex gerekir) |
| Tarama bütçesini önemli sayfalara yönlendirir | Sayfayı gizli tutmaz; dosya herkese açıktır ve içindeki yollar okunabilir |
| Site haritasının adresini bildirir | Kötü niyetli botları durdurmaz; kurallara uymak gönüllüdür |
| Farklı botlara farklı kurallar verir | Sayfa içindeki belirli bir bölümü engelleyemez |
En kritik yanlış anlama ilk satırdadır: robots.txt ile engellenen bir sayfa yine de Google sonuçlarında görünebilir. Başka siteler o sayfaya link veriyorsa Google URL'yi dizine alır, ama içeriğini okuyamadığı için açıklama yerine "Bu sayfa için bilgi mevcut değil" yazar. Bir sayfayı sonuçlardan gerçekten çıkarmak için taramaya izin verip sayfaya noindex etiketi koymak gerekir; tarama engellenirse Google noindex etiketini de göremez.
robots.txt söz dizimi: User-agent, Disallow, Allow, Sitemap
Dosya, her biri bir veya daha fazla bot için geçerli kural gruplarından oluşur. Dört temel yönerge vardır:
- User-agent: Kuralların hangi bota uygulanacağı.
*tüm botlar demektir.Googlebot,Bingbot,GPTBotgibi belirli botlar da yazılabilir. Bir bot kendi adına yazılmış grup bulursa yalnızca onu uygular,*grubunu yok sayar. - Disallow: Taranmayacak yol.
Disallow: /yonetim/o klasörle başlayan her adresi kapatır. BoşDisallow:hiçbir şeyi engellemez. - Allow: Disallow içindeki bir istisna.
Disallow: /ozel/altındaAllow: /ozel/acik.htmlyazılabilir. Google, çakışan kurallarda daha uzun (daha spesifik) olanı uygular. - Sitemap: XML site haritasının tam adresi. Gruptan bağımsızdır, herhangi bir yere yazılabilir, birden fazla olabilir.
Joker karakterler: * herhangi bir karakter dizisi, $ URL sonu. Disallow: /*.pdf$ tüm PDF'leri, Disallow: /*?sirala= belirli bir sorgu parametresini içeren adresleri engeller. Satırlar büyük-küçük harfe duyarlıdır: /Blog/ ile /blog/ farklı yollardır. # ile başlayan satırlar yorumdur.
Google'ın desteklemediği yönergeler: Crawl-delay (Bing destekler, Google yok sayar) ve Noindex (2019'da kaldırıldı).
Örnek robots.txt dosyaları
Küçük kurumsal site
User-agent: *
Allow: /
Disallow: /api/
Disallow: /yonetim/
Sitemap: https://kaynakol.com/sitemap.xml
Bu, Kaynak Ol'un kendi dosyasıdır. Her şey açık, yalnızca yönetim paneli ve API uç noktaları kapalı, site haritası bildirilmiş.
WordPress
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Disallow: /?s=
Disallow: /*?replytocom=
Sitemap: https://site.com/sitemap_index.xml
Yönetim paneli kapalı ama bazı temaların ihtiyaç duyduğu admin-ajax açık; site içi arama sonuçları ve yorum yanıt parametreleri kopya içerik üretmemesi için kapalı. /wp-content/ klasörünü engellemeyin; Google'ın CSS ve JS dosyalarına erişmesi, sayfayı doğru render etmesi için gerekir.
E-ticaret
User-agent: *
Disallow: /sepet/
Disallow: /hesabim/
Disallow: /odeme/
Disallow: /*?sirala=
Disallow: /*?fiyat=
Disallow: /*&sayfa=
Sitemap: https://site.com/sitemap-urunler.xml
Sitemap: https://site.com/sitemap-kategoriler.xml
Sepet, hesap ve ödeme sayfaları kişiseldir ve taranmamalı. Sıralama ve filtre parametreleri aynı ürün listesinin yüzlerce kopyasını üretir; bunlar tarama bütçesini tüketir. Ancak filtre sayfalarından bazıları değerli arama trafiği taşıyorsa (ör. "kırmızı koşu ayakkabısı") onlar için canonical veya ayrı statik URL düşünülmeli.
AI botları için robots.txt kararı
2023'ten beri OpenAI (GPTBot), Anthropic (ClaudeBot), Perplexity (PerplexityBot), Google (Google-Extended) ve diğerleri kendi botlarını robots.txt üzerinden yönetilebilir hale getirdi. Bu, site sahiplerine yeni bir karar getirdi: içeriğim yapay zekâ modellerini eğitmek için kullanılsın mı, AI arama sonuçlarında kaynak olarak gösterileyim mi?
İki ayrı şeyi ayırt etmek gerekir. Bazı botlar modeli eğitmek için veri toplar (GPTBot, Google-Extended, CCBot). Bazıları ise kullanıcı sorduğu anda sayfayı okuyup yanıtta kaynak gösterir (OAI-SearchBot, PerplexityBot, ChatGPT-User). İkincisini engellemek, ChatGPT ve Perplexity gibi platformlarda görünmekten vazgeçmek demektir. Türkçe pazarda yapılan bir ölçümde sitelerin önemli bir kısmının bu ayrımı bilmeden, CDN'in varsayılan ayarıyla tüm AI botlarını engellediği görüldü. Botların tam listesi ve hangisinin ne yaptığı ayrı bir rehberde anlatılıyor.
Pratik öneri: görünürlük isteyen bir hizmet veya içerik sitesi için AI arama botlarına izin verin, eğitim botları konusunda kendi tercihinizi yapın. Örnek:
User-agent: GPTBot
Disallow: /
User-agent: OAI-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
Unutmayın: robots.txt'de izin vermeniz yeterli değildir. Sunucu, CDN veya güvenlik duvarı botu ayrıca engelliyor olabilir; bu durumun nasıl tespit edileceği ayrı bir yazının konusu.
En sık yapılan robots.txt hataları
- Test ortamından canlıya geçerken
Disallow: /satırını unutmak. En pahalı hata. Site yayına girer, haftalarca trafik gelmez, sebep tek satırdır. Yayına alma kontrol listesine ekleyin. - CSS ve JS klasörlerini engellemek. Google sayfayı render edemez, mobil uyumluluk ve içerik değerlendirmesi bozulur.
- Gizlemek için robots.txt kullanmak. Dosya herkese açıktır;
Disallow: /gizli-rapor/satırı o klasörün varlığını ilan eder. Gizli içerik için şifre koruması kullanın. - noindex'li sayfayı aynı zamanda Disallow etmek. Google taramazsa noindex'i göremez; sayfa dizinde kalabilir.
- Yanlış konum. Dosya yalnızca kök dizinde geçerlidir.
/blog/robots.txtokunmaz. Alt alan adlarının (blog.site.com) kendi dosyası olmalıdır. - Büyük-küçük harf ve bitiş işareti.
Disallow: /bloghem/blog/hem/blog-yazisi/adreslerini engeller. Klasör kastediliyorsa sonuna/koyun. - Site haritasını bildirmemek. Zorunlu değil ama ücretsiz bir keşif sinyalidir; ekleyin.
robots.txt nasıl test edilir?
Üç yol var. Birincisi, tarayıcıda site.com/robots.txt adresini açıp dosyanın 200 döndüğünü ve içeriğinin beklediğiniz gibi olduğunu görmek. İkincisi, Search Console'da Ayarlar > robots.txt raporu: Google'ın dosyayı en son ne zaman çektiğini, hangi sürümünü gördüğünü ve söz dizimi hatalarını gösterir. Üçüncüsü, URL denetimi aracıyla belirli bir sayfayı test etmek: "Taramaya izin verildi mi?" satırı robots.txt sonucunu söyler.
Dosyayı değiştirdikten sonra Google'ın yeni sürümü görmesi genellikle 24 saat içinde olur; Search Console'daki robots.txt raporundan yeniden çekme isteyebilirsiniz.
Sık sorulan sorular
robots.txt zorunlu mu?
Hayır. Dosya yoksa botlar her şeyi tarayabilir kabul eder. Ama site haritasını bildirmek ve gereksiz alanları kapatmak için bulunması önerilir.
robots.txt ile sayfayı Google'dan gizleyebilir miyim?
Hayır. robots.txt taramayı engeller, indekslemeyi değil. Sayfayı sonuçlardan çıkarmak için noindex meta etiketi, gizlemek için şifre koruması kullanın.
Disallow: / yazarsam ne olur?
Tüm site tüm botlara kapanır. Yayındaki bir sitede bu, Google'ın taramayı durdurması ve sıralamaların zamanla kaybolması demektir.
robots.txt'de Sitemap satırı Search Console'a göndermenin yerine geçer mi?
Kısmen. Google robots.txt'deki Sitemap satırını okur ve haritayı keşfeder. Ama Search Console'a ayrıca göndermek, haritanın işlenme durumunu ve hatalarını görmenizi sağlar; ikisini birlikte yapın.