Robots.txt nedir?
Robots.txt web böceği (web spawler) yada web örümceği (web spider) gibi yazılımların web sitenizin kamuya açık bölümlerinin hepsine veya bir kısmına erişimini engellemeye yarayan bir standarttır. Genelde web sitelerini sınıflandırmak ve arşivlemek amacı ile arama motorları ya da düzeltilmiş kaynak kodları için site yöneticileri robotları kullanırlar. Robotlar bu işlem sonucunda web siteleri için site haritaları oluştururlar.
Robots.txt‘i kullanarak arama motorları botlarının sitenizin hangi içerikleri yayınlanmasını yada yayınlanmaması gereken sayfa, resim, klasör vb dosyalarınızı belirleyebilirsiniz.
Ana domainde bulunması gereken robots.txt dosyası eğer subdomain kullanıyorsanız her subdomaininiz için robots.txt dosyası bulunması gerekir.
Örnek: sizinsiteniz.com’un bir robots.txt dosyası var ise test.sizinsiteniz.com’unda bir robots.txt dosyası olması gerekir.
Robots.txt Neden Önemli?
Çoğu web sitesi bir robots.txt dosyasına ihtiyaç duymaz. Bunun nedeni, Google’ın sitenizdeki tüm önemli sayfaları bulup dizine ekleyebilmesidir. Yani sitenizde robots.txt dosyası olmasada google dizinine eklenebilmektedir.
Robots.txt dosyası kullanmak isteyeceğiniz 3 ana sebep vardır;
- İstenmeyen Sayfaları Engelle: Bazen sitenizde dizine alınmasını istemediğiniz sayfalarınız olabilir. Örneğin, sayfanın aşamalı bir sürümüne sahip olabilirsiniz. veya bir giriş sayfasınız olabilir. Bu sayfaların var olması gerekiyor, ama rastgele insanların görmesini istemiyorsunuz. Bu, bu sayfaları arama motoru tarayıcılarından ve botlardan engellemek için robots.txt kullanacağınız bir durumdur.
- Tarama Bütçesini En Üst Düzeye Çıkarın: Tüm sayfalarınızın dizine eklenmesini sağlamakta zorlanıyorsanız, bir tarama bütçesi sorununuz olabilir. Önemsiz sayfaları robots.txt ile engelleyerek Googlebot, tarama bütçenizin fazlasını gerçekten önemli olan sayfalara harcayabilir.
- Kaynakların Dizine Alınmasını Önleme: Meta yönergeleri kullanmak, sayfaların dizine alınmasını önlemek için Robots.txt dosyasının yanı sıra çalışabilir. Bununla birlikte, meta yönergeler, PDF’ler ve görüntüler gibi multimedya kaynakları için iyi çalışmaz. İşte robots.txt tam da bu sırada devreye giriyor.Robots.txt, arama motoru örümceklerine web sitenizdeki belirli sayfaları taramamalarını söyler.
Robots.txt dosyası sitenin kök dizininde bulundurulması gerekmektedir. SEO açısından çok büyük bir öneme sahiptir. Peki bu robots.txt ler nasıl kullanılır bazı örnekler verelim;
Bütün robotların, site üzerindeki bütün dosyaları tarayabileceğine izin veren örnek; ” * ” yıldız işareti istisnasız tüm robotları indeksleme yapabileceğini gösterir.
User-agent: * Disallow:
Bütün robotların, site üzerindeki hiçbir dosyayı taramamasının istendiği örnek;
User-agent: * Disallow: /
Bütün robotlar, site üzerindeki aşağıdaki 4 klasörün içeriğini indekslememeli;
User-agent: * Disallow: /cgi-bin/ Disallow: /images/ Disallow: /tmp/ Disallow: /private/
İsmi verilen robot, site üzerindeki ismi verilen klasörün içeriğini indekslememeli;
User-agent: BadBot # 'BadBot' kelimesi ilgili botun adı ile değiştirilir. Disallow: /private/
Bütün robotlar, site üzerindeki aşağıdaki dosyayı indekslememeli; O klasördeki diğer bütün dosyalar ve sayfalar taratılır.
User-agent: * Disallow: /directory/file.html
Kod içinde yorum yazılan örnekler;
# Yorumlar "#" işaretinden sonra bir satır başında ya da bir komuttan sonra kullanılabilir. User-agent: * # bütün botları kapsasın Disallow: / # bütün botları uzak tutsun
Bütün robotların, bütün sayfalara erişiminin istenmediği durumlarda
Disallow: * # yıldız kullanmak pek uygun olmayacağı için onun yerine " / " kullanın.
Geciktirme komutları
Çoğu büyük web arama botları geciktirme komutunu destekler. Örneğin aşağıdaki örnekte robottan ilgili web sitesinden 10 saniyelik aralıklar ile bilgi çekmesi istemi yapılmıştır.
User-agent: * Crawl-delay: 10
İzin Ver komutu
Bazı büyük botlar, Allow ( izin ver ) komutu kullanarak Disallow ( kısıtla ) komutunu etkisizleştirmeye imkân verirler. Bu özellikle bütün klasördeki sadece bir dosyanın ya da sayfanın taranmasını istediğiniz durumlarda faydalı olacaktır. Fakat dikkat edilmelidir ki genelde standart olarak robots.txt’nin ilk satırı uygulamaya konulabilir. Fakat Google’ın uygulamasında önce tüm Allow ( izin ver ) komutları işleme konulur daha sonra Disallow komutları işleme konulur. Örneğin;
Allow: /folder1/myfile.html Disallow: /folder1/ Bu örnekte folder1/myfile.html hariç o klasördeki tüm dosyalar göz ardı edilir.
Bu standardı geliştirmek için Visit-time (ziyaret-saati) ve request-rate (talep-oranı) gibi çeşitli önerilerin yapıldığını An Extended Standard for Robot Exclusion (Robot Engelleme için gelişmiş bir standart) adı altında bir takım öneriler yapılmıştır.
User-agent: * Disallow: /downloads/ Request-rate: 1/5 # her 5 saniyede maksimum 1 sayfa Visit-time: 0600-0845 # sadece 06:00 ile 08:45 UTC (GMT) saatleri arasında ziyaret edilme talebi Bu standardın ilk versiyonunda " * " ya da " Disallow " diye herhangi bir komut yoktu. Googlebot ve Slurp gibi modern arama botları " * " lı komutları tanısa da, MSNbot ve Teoma bu komutu farklı şekilde anlamaktadır