Robots.txt hakkında

Robots.txt dosyası oluşturma

Wix veya Blogger gibi bir site barındırma hizmeti kullanıyorsanız robots.txt dosyası oluşturmanız veya düzenlemeniz gerekmeyebilir.

Başlarken

Robots.txt dosyası, sitenizin kök dizininde bulunur. Dolayısıyla www.example.com sitesinde robots.txt dosyası www.example.com/robots.txt adresinde bulunur. Robots.txt, Robot Hariç Tutma Standardı'na uygun bir düz metin dosyasıdır. Robots.txt dosyası, bir veya daha fazla kuraldan oluşur. Her kural belirli bir tarayıcının söz konusu web sitesindeki belirli bir dosya yoluna erişimini engeller (veya erişimine izin verir).

Aşağıda, iki kural içeren basit bir robots.txt dosyasının içeriği gösterilmektedir:

# Grup 1
User-agent: Googlebot
Disallow: /nogooglebot/

# Grup 2
User-agent: *
Allow: /

Site haritası: http://www.example.com/sitemap.xml

 

Açıklama:

  1. "Googlebot" tarayıcısı adlı kullanıcı aracısı, http://example.com/nogooglebot/ klasörünü veya herhangi bir alt dizinini taramamalıdır.
  2. Diğer tüm kullanıcı aracıları sitenin tamamına erişebilir. (Tam erişim sağlandığı varsayımından hareketle bu durum belirtilmese dahi sonuç aynı olacaktır.)
  3. Sitenin Site haritası dosyası, http://www.example.com/sitemap.xml adresinde bulunmaktadır.

İlerleyen bölümlerde daha ayrıntılı bir örnek sağlayacağız.

Temel robots.txt yönergeleri

Robots.txt dosyaları ile ilgili bazı temel yönergeleri burada bulabilirsiniz. Robots.txt söz diziminin inceliklerini anlamak için robots.txt dosyalarının tam söz dizimini okumanızı öneririz.

Biçim ve konum

Bir robots.txt dosyası oluşturmak için neredeyse tüm metin düzenleyicilerini kullanabilirsiniz. Metin düzenleyicisi, standart UTF-8 metin dosyalarını oluşturabilmelidir. Kelime işlemci kullanmayın (kelime işlemciler, dosyaları genellikle özel bir biçimde kaydeder ve tarayıcılar için sorunlara neden olabilecek süslü tırnak gibi beklenmedik karakterler ekleyebilir).

Sitenizde kullanılacak robots.txt dosyaları yazmak veya düzenlemek için robots.txt Test aracını kullanın. Bu araç, sitenizdeki söz dizimini ve davranışı test etmenize olanak tanır.

Biçim ve konum kuralları:

  • Dosya, robots.txt olarak adlandırılmalıdır.
  • Sitenizde yalnızca bir robots.txt dosyası olabilir.
  • Robots.txt dosyası, geçerli olacağı web sitesi ana makinesinin kök dizininde bulunmalıdır. Örneğin, http://www.example.com/ altındaki tüm URL'lerde taramayı kontrol etmek için robots.txt dosyası http://www.example.com/robots.txt konumuna yerleştirilmelidir. Bir alt dizine (örneğin, http://example.com/pages/robots.txt) yerleştirilemez. Web sitenizin kök dizinine nasıl erişeceğinizden emin değilseniz veya bunun için izin almanız gerekiyorsa web barındırma hizmeti sağlayıcınıza başvurun. Web sitenizin kök dizinine erişemiyorsanız, meta etiketler gibi alternatif bir engelleme yöntemini kullanın.
  • Robots.txt dosyası alt alan adları (ör. http://website.example.com/robots.txt) veya standart olmayan bağlantı noktaları (ör. http://example.com:8181/robots.txt) için geçerli olabilir.
  • Yorumlar, # işaretinden sonraki her türlü içeriktir.

Söz dizimi

  • Robots.txt dosyası UTF-8 olarak kodlanmış (ASCII karakterleri de içerir) metin dosyası olmalıdır. Diğer karakter kümelerini kullanmak mümkün değildir.
  • Robots.txt dosyası, bir veya daha fazla gruptan oluşur.
  • Her grup, satır başına bir yönerge olacak şekilde birden fazla kural veya yönergeden (talimat) oluşur.
  • Bir grup şu bilgileri verir:
    • Kuralın kimin için geçerli olacağı (kullanıcı aracısı)
    • Söz konusu aracının erişebileceği dizinler veya dosyalar ve/veya
    • Söz konusu aracının erişemeyeceği dizinler veya dosyalar.
  • Gruplar yukarıdan aşağıya doğru işlenir ve kullanıcı aracısı, yalnızca bir kural grubuyla eşleşebilir. Bu, belirli bir kullanıcı aracısıyla eşleşen ilk ve en ayrıntılı kural olur.
  • Bir kullanıcı aracısının Disallow: kuralıyla engellenmeyen bir sayfayı veya dizini tarayabileceği varsayılan olarak kabul edilir.
  • Kurallar büyük/küçük harfe duyarlıdır. Örneğin, Disallow: /file.asp kuralı http://www.example.com/file.asp için geçerli olur ancak http://www.example.com/FILE.asp için geçerli değildir.

Robots.txt dosyalarında aşağıdaki yönergeler kullanılır:

  • User-agent: [Zorunlu, grup başına bir veya daha fazla] Kuralın geçerli olduğu arama motoru robotunun adıdır (web tarayıcı yazılımı). Bu, herhangi bir kuralın ilk satırıdır. Çoğu kullanıcı aracısı, Web Robotları Veritabanı'nda veya Google kullanıcı aracısı listesinde listelenmektedir. Yol önekleri, sonek veya dizenin tamamı için * joker karakterini destekler. Aşağıdaki örnekte olduğu gibi kullanılacak bir yıldız işareti (*) çeşitli AdsBot tarayıcıları dışındaki tüm tarayıcılarla eşleşir. Eşleşmeyen AdsBot tarayıcıların adlarının açık bir şekilde belirtilmesi gerekir. (Google tarayıcı adları listesine bakın.) Örnekler:
    # 1. Örnek: Yalnızca Googlebot'u engelleme
    User-agent: Googlebot
    Disallow: /
    
    # 2. Örnek: Googlebot'u ve Adsbot'u engelleme
    User-agent: Googlebot
    User-agent: AdsBot-Google
    Disallow: /
     
    # 3. Örnek: AdsBot tarayıcıları dışındaki her şeyi engelleme
    User-agent: * 
    Disallow: /
  • Disallow: [Kural başına en az bir veya daha fazla Disallow veya Allow] Kullanıcı aracısı tarafından taranmaması gereken bir dizin veya sayfa; kök alanla göreli olarak belirtilir. Bu bir sayfaysa, tarayıcıda gösterildiği şekliyle tam sayfa adı olmalıdır; bir dizinse, / işaretiyle sona ermelidir.  Yol önekleri, sonek veya dizenin tamamı için * joker karakterini destekler.
  • Allow: [Kural başına en az bir veya daha fazla Disallow veya Allow] Az önce bahsedilen kullanıcı aracısı tarafından taranması gereken bir dizin veya sayfa; kök alanla göreli olarak belirtilir. Bu parametre, izin verilmeyen bir dizindeki bir alt dizinin veya sayfanın taranmasına izin vermek üzere Disallow parametresini geçersiz kılmak için kullanılır. Bu bir sayfaysa, tarayıcıda gösterildiği şekliyle tam sayfa adı olmalıdır; bir dizinse, / işaretiyle sona ermelidir. Yol önekleri, sonek veya dizenin tamamı için * joker karakterini destekler.
  • Sitemap: [İsteğe bağlı, dosya başına sıfır veya daha fazla] Bu web sitesinin site haritasının konumu. Tam bir URL olmalıdır; Google, http/https/www.www olmayan alternatifleri varsaymaz veya kontrol etmez. Site Haritaları, Google'a tarayabileceği veya tarayamayacağı içeriğe karşılık hangi içeriği taraması gerektiğini bildirmek için iyi bir yoldur. Site haritaları hakkında daha fazla bilgi edinin. Örnek:
    Site haritası: https://example.com/sitemap.xml
    Site haritası: http://www.example.com/sitemap.xml

Diğer kurallar yoksayılır.

Bir başka örnek dosya

Robots.txt dosyası, her biri grupların hedefini belirten bir User-agent satırıyla başlayan bir veya daha fazla gruptan oluşur. Burada, iki gruplu bir dosya gösterilmektedir. Her grup, satır içi yorumlarla açıklanmıştır:

# Googlebot'u example.com/directory1/... ve example.com/directory2/... dizinlerinde
# engelleyin ancak directory2/subdirectory1/... dizinine erişimine izin verin
# Sitedeki diğer tüm dizinlere varsayılan olarak izin verilir.
User-agent: googlebot
Disallow: /directory1/
Disallow: /directory2/
Allow: /directory2/subdirectory1/

# Sitenin tamamını anothercrawler adlı başka bir tarayıcının erişimine karşı engelleyin.
User-agent: anothercrawler
Disallow: /

Tam robots.txt söz dizimi

Tam robots.txt söz dizimini burada bulabilirsiniz. Robots.txt söz diziminin öğrenilmesi önem taşıyan bazı karmaşık parçaları olduğundan lütfen tüm dokümanları okuyun.

Yararlı robots.txt kuralları

Yaygın olarak uygulanan bazı yararlı robots.txt kuralları aşağıda listelenmiştir:

Kural Örnek
Web sitesinin taranmasını tümüyle reddetme. Bazı durumlarda web sitesindeki URL'lerin, taranmamış olsalar bile yine de dizine eklenebileceklerini unutmayın. Not: Bu kural, bazı AdsBot tarayıcılarıyla eşleşmez. Bu tarayıcıların adlarının açıkça belirtilmesi gerekir.
User-agent: *
Disallow: /
Dizin adından sonra düz eğik çizgi ekleyerek bir dizin ve içeriğin taranmasına izin vermeme. Gizli içeriğe erişimi engellemek için robots.txt dosyasını kullanmamanız gerektiğini unutmayın. Bunun yerine uygun kimlik doğrulama yöntemini kullanın. Robots.txt dosyasıyla taranmasına izin verilmeyen URL'ler, taranmadan dizine eklenebilir ve robots.txt dosyası başkaları tarafından görüntülenerek gizli içeriğinizin yerinin ortaya çıkmasına neden olabilir.
User-agent: *
Disallow: /calendar/
Disallow: /junk/
Tek bir tarayıcının erişimine izin verme
User-agent: Googlebot-news
Allow: /

User-agent: *
Disallow: /
Bir tarayıcı dışında tüm tarayıcıların erişimine izin verme
User-agent: Unnecessarybot
Disallow: /

User-agent: *
Allow: /

Eğik çizgiden sonra sayfayı listeleyerek tek bir web sayfasının taranmasına izin vermeme.

User-agent: * Disallow: /private_file.html

Google Görseller'den belirli bir resmi engelleme:

User-agent: Googlebot-Image
Disallow: /resimler/kopekler.jpg

Google Görseller'den sitenizdeki tüm resimleri engelleme

User-agent: Googlebot-Image
Disallow: /

Belirli türdeki dosyaların taranmasına izin vermeme (örneğin, .gif):

User-agent: Googlebot
Disallow: /*.gif$

Sitenizin tamamının taranmasına izin vermeme; ancak bu sayfalarda AdSense reklamları gösterme; Mediapartners-Google dışındaki hiçbir web tarayıcısına izin verilmez. Bu uygulama sayfalarınızı arama sonuçlarından gizler, ancak Mediapartners-Google web tarayıcısı sitenizin ziyaretçilerine hangi reklamların görüntüleneceğine karar vermek üzere sayfaları analiz etmeye devam eder.

User-agent: *
Disallow: /

User-agent: Mediapartners-Google
Allow: /
Belirli bir dize ile biten URL'leri eşleştirme; $ kullanın. Örneğin, bu örnek kod .xls ile biten tüm URL'leri engeller:
User-agent: Googlebot
Disallow: /*.xls$
Bu size yardımcı oldu mu?
Bunu nasıl iyileştirebiliriz?