Robots.txt Dosyası Oluşturma Rehberi

By Mart 17, 2017Teknik SEO

Robots.txt dosyası arama motorunun sitenizin hangi bölümlerine girip hangi bölümlerine giremeyeceğini söyleme yollarından birincisidir. Büyük arama motorlarının tümü robots.txt dosyasının temel fonksiyonlarının tümünü destekler. Bununla birlikte bazı arama motorlarının kullandığı ve kullanışlı sayılabilecek birkaç ek özelliğinden de bahsedebiliriz. Bu rehber robots.txt’nin web siteniz içerisindeki tüm kullanım alanlarını içeriyor. Her ne kadar çok basit görünse de, robots.txt dosyanızda bir yanlış yapmanız durumunda bu sitenize ciddi zarar verebilir. Bu nedenle rehberimizi okumanızı ve anlamanızı tavsiye ediyoruz.

  • Robots.txt Dosyası Nedir?
  • Robots.txt Dosyası Ne Yapar?
  • Robots.txt Dosyamı Nereye Koymalıyım?
  • Robotst.txt Dosyasını Kullanmanın Artıları ve Eksileri Nelerdir?
    • Artısı: Crawl Budget
    • Eksisi: Arama Sonuçlarından Bir sayfanın Çıkarılamaması
    • Eksisi: Link Değerinin Yayılmaması
  • Robots.txt sözdizimi
    • Tarayıcı anahtarı direktifi
      • Arama Motoru Örümcekleri İçin En Yaygın Kullanılan Tarayıcı Anahtarları
    • Robot Engelleme Direktifleri
    • Wildcardlar ve Standart İfadeler Nasıl Kullanılır
    • Standart Olmayan Robots.txt Bulucu Direktifleri
      • İzin Direktifleri
      • Noindex Direktifleri
      • Host Direktifleri
      • Bulucu-Gecikme Direktifleri
      • XML Site Haritaları İçin Site Haritası Direktifleri
      • Arama Motoru Örümcekleri İçin En Yaygın Kullanılan Tarayıcı Anahtarları
    • Robots.txt Dosyasının Etkin Hale Getirilmesi

Robots.txt Dosyası Nedir?

humans.txt

Birkaç yazılımcı oturup düşündükten ve bizlerin birer robot olmadığını fark ettikten sonra humans.txt dosyasını oluşturdular. Bu dosyada bir sitede çalışan kişilerin çalışma biçimi diğer konularla birlikte bir standart oluşturacak şekilde şekillendirildi.

Robots.txt dosyası da bir tekst dosyasıdır ve katı bir söz dizimini takip eder. SEO nedir sorusuna cevap verirken site içi seo bölümüne girer. Arama motorlarının örümcekleri tarafından taranmak üzere tasarlanmışlardır. Dosyanın adı nedeniyle bu örümceklere robot adı da verilir.

Dosyanın söz dizimi oldukça katıdır çünkü dosya bilgisayar tarafından okunabilir olmalıdır. Satırlar arasında boşluklar yoktur, her şey 1 ve 0’lardan ibarettir.

Robot dışarlama protokolü adı da verilen robots.txt dosyası ilk arama motoru yazılımcıları arasında düzenlen bir konsensus sonucu ortaya çıkmıştır. Bu dosya resmi bir organizasyonun oluşturduğu resmi bir standart değildir. Fakat tüm büyük arama motorları bu dosyayı kullanmaktadır.

Robots.txt Dosyası Ne Yapar?

Arama motorları sayfaları örümcekleri ile tarayarak interneti indekslerler. Bir A sitesinden B sitesine oradan da C sitesine erişmek ve bu şekilde devam etmek için linkleri takip ederler. Bir arama motoru daha önce karşılaşmadığı bir domaini incelemeden önce, domain içerisindeki robots.txt dosyasını inceler. Robots.txt dosyası arama motoruna domain içerisindeki hangi URL’lerin indekslenmesine izin verildiğini söyler.

Arama motoru robots.txt dosyası içeriğini saklar, fakat genelde günde birkaç kere bu içeriği yeniler. Bu sayede yapılan değişiklikler kısa sürede arama sonuçlarına yansıtılır.

Robots.txt Dosyamı Nereye Koymalıyım?

Robots.txt dosyanız her zaman domaininizin kök klasöründe yer almalıdır. Örneğin eğer domaininiz www.example.com ise, robots dosyanız http://www.example.com/robots.txt şeklinde görünmelidir.

Dikkat: eğer domainininiz “www.“ olmadan çalışıyorsa, yine de aynı robots.txt dosyasına sahip olduğunuzdan emin olun! Aynı durum hem http hem de https için geçerlidir. Bir arama motoru http://example.com/test URL’sini örümcekleri ile taramak isterse, http://example.com/robots.txt dosyasını bulur. Aynı URL’yi https üzerinden taramak isterse, https siteniz üzerinden de robots.txt dosyanızı arayacaktır, https://example.com/robots.txt.

Bununla birlikte robots.txt dosyanızın gerçekten de robots.txt olarak isimlendirilmesi oldukça önemlidir. Bu yazım türü büyük küçük harfe duyarlıdır. Eğer bu dosyanın isimlendirilmesinde hata yaparsanız, dosya çalışmayacaktır.

Robots.txt Dosyası Kullanmanın Artıları ve Eksileri

Artısı: Crawl Budget

Her web sitesinin arama motorları tarafından kaç adet sayfasının taranacağına dair bir izni vardır. SEO uzmanları bu izinlere crawl budget adını verirler. Web sitenizin bir bölümünü arama motorlarının örümceklerinin girişine engelleyerek, crawl budget’ınızı web sitenizin diğer bölümlerinde kullanmak üzere ayırabilirsiniz. Özellikle SEO temizleme sürecinde ihtiyaç duyulan sitelerde, bu uygulama web sitesinin bazı bölümlerini arama motorlarına kapama konusunda çok faydalı olabilmektedir.

Eksisi: Arama Sonuçlarından Bir Sayfanın Çıkarılamaması

Robots.txt dosyasını kullanarak arama motoru örümceğine sitenizde nereye gitmemesi gerektiğini söyleyebilirsiniz. Bununla birlikte arama motoruna hangi URL’yi arama sonuçlarında göstermeyeceğini söyleyemezsiniz. Bu, sizin arama motoruna bir URL’yi incelememesini söylemeniz – buna engellemek deniliyor – onun yine de URL’yi arama sonuçlarında göstermeyeceği anlamına gelmiyor. Eğer arama motoru bu URL’ye yönelik yeterince link bulursa, o sayfayı içeriğinde ne olduğunu bilmese dahi arama sonuçlarına ekleyecektir.

Eğer bir sayfanın arama motorlarında güvenilir bir şekilde engellenmesini istiyorsanız, bu durumda meta robotlarının noindex tag’ını kullanmanız gerekir. Bu arama motorunun bu sayfayı indekslemesi ve sayfa içerisindeki noindex tag’ını bulması gerektiği anlamına gelir. Bu gibi bir durumda sayfanın robots.txt dosyası içerisinde engellenmemiş olması gerekir.

Eksisi: Link Değerinin Yayılamaması

Arama motoru bir sayfanın içeriğini inceleyemediği zaman, engelli sayfalardaki linkler için link değerlerini de dağıtamaz. Eğer inceleme mümkün olsaydı fakat sayfayı indekslemeseydi, sayfa içerisinde bulduğu linklerin link değerlerini dağıtabilirdi. Bir sayfa robots.txt içerisinden engellendiği zaman, link değeri kaybedilir.

Robots.txt Söz Dizimi

Bir robots.txt dosyası bir veya birden çok direktif içeren bir yazım bloğuna sahiptir, her biri, bir tarayıcı anahtarı sırasıyla başlar. “Tarayıcı-anahtarı” (user agent), spesifik bir örümceğin adresine karşılık gelen adıdır. İster tüm arama motorları için bir blok tarayıcı anahtarınız olur, isterseniz tarayıcı anahtarı için bir wildcard kullanırsınız veya isterseniz, spesifik arama motorları için spesifik bloklar kullanabilirsiniz. Bir arama motoru örümceği her zaman adıyla eşleşen spesifik bloğu seçecektir.

Bu bloklar şu şekilde görünür (endişelenmeyin, aşağıda açıklıyoruz):

User-agent: *

Disallow: /

User-agent: Googlebot

Disallow: /

User-agent: bingbot

Disallow: /not-for-bing/

İzin verme veya vermeme gibi direktifler büyük küçük harf duyarlı değildirler. Bunları isterseniz küçük isterseniz de büyük harflerle yazabilirsiniz. Bu size kalmış. Bununla birlikte, değerler büyük küçük harf duyarlıdırlar. /photo/, /Photo/ ile aynı şey değildir. Direktifleri dosyanın okunabilirliği adına büyük ve küçük harfe duyarlı olarak oluştururuz.

Tarayıcı-anahtarı direktifleri

Her direktif bloğunun ilk bölümü tarayıcı-anahtarlarıdır. Tarayıcı-anahtarı spesifik bir örümceği tanımlar. Tarayıcı-anahtarı alanı spesifik bir örümceğin tarayıcı anahtarı ile eşleşir (genelde daha uzundur). Örneğin, Google’dan gelen en yaygın örümceklerden birisinin tarayıcı-anahtarı aşağıdaki gibidir:

Mozilla/5.0 (compatible; Googlebot/2.1;

+http://www.google.com/bot.html)

Göreli olarak basit bir User-agent: Googlebot satırı eğer bu örümceğe ne yapmasını söylemek isterseniz iş görecektir.

Unutmayın ki, çoğu arama motorunun birden çok örümceği vardır. Normal indeksleme işlemleri, reklam programları, resimler ve videolar için spesifik örümcekler kullanırlar.

Arama motorları her zaman bulabildikleri en spesifik direktif bloklarını kullanmayı tercih ederler. Örneğin 3 direktif setimiz olduğunu düşünelim: birisi * için, diğeri Googlebot ve bir diğeri de Googlebot-News için olsun. Eğer bir bot, tarayıcı-anahtarı Googlebot-Video şeklinde gelirse, Googlebot’a uygulanan kısıtlamalara uyacaktır.  Tarayıcı-anahtarı Googlebot-News olan bir bot daha spesifik Googlebot-News direktiflerini kullanacaktır.

Arama Motorları Örümcekleri İçin Kullanılan En Yaygın Tarayıcı-Anahtarları

Aşağıda robots.txt dosyası içerisinde en çok arama yapılan arama motorları ile eşleştirilmek üzere kullanılan tarayıcı-anahtarları listelenmektedir:

 

Arama Motoru Alan Tarayıcı-Anahtarı
Baidu Genel baiduspider
Baidu Resim baiduspider-image
Baidu Mobil baiduspider-mobile
Baidu Haberler baiduspider-news
Baidu Video baiduspider-video
Bing Genel bingbot
Bing Genel msnbot
Bing Resim & Video msnbot-media
Bing Reklam adidxbot
Google Genel Googlebot
Google Resim Googlebot-Image
Google Mobil Googlebot-Mobile
Google Haberler Googlebot-News
Google Video Googlebot-Video
Google AdSense Mediapartners-Google
Google AdWords AdsBot-Google
Yahoo! Genel Slurp
Yandex Genel Yandex

 

Reddetme Direktifleri (Disallow)

Direktif bloklarındaki ikinci sıra reddetme sırasıdır. Belirli örümceklerin erişemeyeceği kısımları belirttiğiniz site bölümlerini gösteren bir veya birden fazla sıra kullanmanız mümkündür. Boş bir reddetme bölümü hiçbir şeyi reddetmiyorsunuz anlamına gelir, bu da temelde örümceklerin siteniz içerisindeki her yere erişebileceği anlamına gelmektedir.

Tarayıcı-anahtarları: *    User-agent: *

Reddetme: /                     Disallow: /

Yukarıdaki örnekte robots.txt dosyanızın sözünü dinleyen tüm arama motorları sayfanızı incelemeyecektir.

User-agent: *

Disallow:

Yukarıdaki örnekte, sadece tek bir karakter farkla, tüm arama motorları sitenizin tümünü inceleyebilecektir.

User-agent: googlebot

Disallow: /Photo

Yukarıdaki örnek Google’ın web siteniz içerisindeki Photo klasörü ve içerisindeki her şeyi incelemesini engelleyecektir. Bu /Photo klasörünün tüm alt klasörlerinin örümcekler tarafından incelenemeyeceği anlamına gelir. Bu photo isimli klasörün de engelleneceği anlamına gelmez. Bu bölüm büyük küçük harfe duyarlı olarak çalışmaktadır.

Google botları için robots.txt dosyasımı nasıl optimize edileceğini bilmiyorsanız da aşağıdaki videoda eski Google spam takımın başı olan Matt Cutts’tan bu konuya dair bir açıklaması var, izleyebilirsiniz.

Wildcard’lar Nasıl Kullanılır / Standart İfadeler

Resmi olarak, standart robots.txt dosyası wildcard’ların standart ifadelerini desteklemez. Bununla birlikte, tüm büyük arama motorları bunları okurlar. Bu robots.txt dosyanız içerisinde aşağıdaki satırlara sahip olabileceğiniz anlamına gelir.

Disallow: /*.php

Disallow: /copyrightred-images/*.jpg

Yukarıdaki örnekte, * hangi dosyalarla isim olarak eşleşiyorsa o dosyaları temsil etmektedir. Unutmayın ki, satırın geri kalanı büyük küçük harf duyarlıdır, yani ikinci satır adı /copyrighted-images/example.JPG isimli bir dosyanın arama motorlarınca incelenmesini engellemeyecektir.

Google gibi bazı arama motorları, daha karmaşık standart ifadelerin kullanımına imkan tanır. Unutmayın ki arama motorlarının tümü bu mantığı algılamazlar. Bu mantığın en kullanışlı ifadesi $ ifadesidir. URL’nin sonunu temsil eder. Aşağıdaki örnekte bu ifadenin ne yaptığını görebilirsiniz:

Disallow: /*.php$

Bu /index.php dosyasının indekslenemeyeceği anlamına gelir, fakat /index.php?p=1 indekslenebilir. Tabi ki bu oldukça spesifik şartlar altında geçerlidir ve oldukça da tehlikelidir: Engelini kaldırmak istemediğiniz şeylerden engelin kalkmasına yol açabilir.

Standart Olmayan Robots.txt İnceleme Direktifleri

Reddetme ve tarayıcı-anahtarı direktiflerine ek olarak kullanabileceğiniz birkaç tane daha direktif bulunmaktadır. Bu direktifler tüm arama motoru örümcekleri tarafından desteklenmezler. Bu nedenle bu direktiflerin sınırlarının olduğundan haberdar olun.

İzin ver direktifi

Her ne kadar orijinal şartnamede yer almasa da, robots.txt’nin ilk oluşturulduğu dönemlerde “Allow” direktifi ile ilgili bir görüş bildirimi bulunmaktaydı. Çoğu arama motoru bu direktifi algılar ve çok basit direktifler halinde kullanılmasına izin verirler.

Disallow: /wp-admin/

Allow: /wp-admin/admin-ajax.php

İzin ver direktifini (allow) kullanmadan aynı sonuca ulaşmanın tek yolu, spesifik olarak wp-admin içerisindeki admin-ajax.php haricindeki tüm dosyaları reddet olarak direktiflemektir.

Noindex Direktifi

“noindex” direktifi az bilinen direktiflerden birisidir. Google bu direktifi destekler. Biz bu direktifin oldukça tehlikeli bir direktif olduğunu düşünüyoruz. Eğer bir sayfayı arama sonuçlarından uzak tutmak istiyorsanız genelde bunun için iyi bir nedeniniz var demektir. Bu metodu kullanarak bir sayfayı engellemeniz, bu sayfayı sadece Google’dan engelleyecektir. Bu nedenle diğer arama motorlarında bu sayfa görünür olacaktır. Yine de robots.txt dosyanız içerisine eklediğiniz bu direktif bazı spesifik Googlebot’ları için çok kullanışlı olabilir. Özellikle de crawl budget’ınızı geliştirmeye çalışıyorsanız. Unutmayın ki, noindex direktifi resmi olarak Google tarafından da desteklenmez. Her ne kadar şu an için çalışıyor olsa da gelecekte çalışmama olasılığı da vardır.

Host Direktifi

Yandex tarafından desteklenen bu direktif(her ne kadar bazı makalelerde desteklendiğini söylese de Google tarafından desteklenmez ), arama motorunun example.com şeklinde mi yoksa www.example.com şeklinde mi göstermesini tercih ettiğinizi belirtir. Özellikle belirtmeniz halinde iş görecektir:

host: example.com

Host direktifini sadece Yandex desteklediği için, güvenmenizi tavsiye etmeyiz. Ayrıca size bir düzen(http veya https) tanımlama seçeneği de vermez. Tüm arama motorlarında çalışan daha iyi bir çözüm olarak karşımıza istemediğiniz versiyonlara karşılılık gelen indekslenmesini istemediğiniz bilgisayar adları olarak 301 yönlendirmeleri çıkıyor. Bu noktada www.example.com ‘u exapmle.com’a yönlendirebilirsiniz.

İnceleme-Gecikmesi Direktifi (Crawl-Delay)

Yahoo!, Bing ve Yandex tarafından desteklenen crawl-delay direktifi zaman zaman bu üçlüyü yavaşlatmak için oldukça kullanışlı olabiliyor. Bu arama motorları direktifleri okuma konusunda az miktarda farklı bir yaklaşıma sahipler, fakat temelde elde edilen sonuç aynı.

Aşağıdaki satır Yahoo! ve Bing’in inceleme işleminden sonra 10 saniye beklemesini sağlayabiliyor. Yandex ise sitenize her 10 saniyelik zaman çerçevesinde bir erişebiliyor. Anlamsal fakat bilmesi ilgi çekici bir farklılık. crawl-delay’e örnek olarak:

crawl-delay: 10

Crawl-delay direktifini kullanırken dikkatli olun. 10 saniyelik bir crawl-delay belirlediğiniz takdirde arama motorlarına sadece 8,640 adet sayfayı inceleme izni veriyorsunuz. Küçük bir site için bu değer çok büyük görünebilir, fakat büyük bir site için bu değer çok da fazla bir değer değildir. Diğer bir taraftan bu arama motorlarından eğer neredeyse hiç trafik almıyorsanız, bant genişliğinden tasarruf etmenin iyi bir yoludur diyebiliriz.

XML Site Haritaları İçin Sitemap

Sitemap direktifini kullanarak arama motorlarına – özellikle de Bing, Yandex ve Google – XML site haritanızın yerini söyleyebilirsiniz. Ayrıca, tabi ki, XML site haritanızı herbir arama motoruna onların webmaster araçlarını kullanarak tanıtmanız da söz konusudur. Bunu özellikle tavsiye edebiliriz. Arama motorlarının webmaster araçları programları siteniz hakkında çok değerli bilgiler verecektir. Eğer bunu yapmayı düşünmüyorsanız, robots.txt dosyanıza sitemap satırı eklemeniz iyi ve çabuk bir seçenek olarak karşınıza çıkıyor.

Robots.txt Dosyanızı Onaylatın

robots.txt dosyanızı onaylatmak için internet üzerindeki çok sayıda yardımcı araçtan faydalanabilirsiniz. Fakat olay crawl direktiflerini onaylatmaya geldiğinde, kaynağa inmenizi tavsiye ederiz. Google arama konsolunda (crawl menüsü içinde) yer alan Google’ın robots.txt test aracını kullanmanızı öneririz.

Yayınlamadan önce yaptığınız değişiklikleri test edin ya da bir SEO ajansı ile görüşüp yardım isteyin! Eğer robots.txt- gibi bir hata yaparsanız, bu hatayı yapan ve arama motorları tarafından tanınmayan ilk site sizinki olmaz.

Leave a Reply