robots.txt nedir
Arama motoru botları bir web sitesini ziyaret ettiğinde,
tarama ve dizine eklemeyi
kontrol etmek için robots.txt dosyasından faydalanılır. Bir
diğer ismi robot
engelleme standardı olarak bilinen robotst.txt dosyası,
arama motoru
tarayıcılarının bir web sunucusunda yer alan hangi dosyalara
erişmesini ya da hangi
dosyalara erişmemesini belirlemektedir. Sadece dosya değil,
klasör ve URL’ler ile
ilgili yönergeler de oluşturulabilir.
Robots.txt dosyası ve kullanımı hakkında bazen birçok yanlış
bilgi duyabilirsiniz.
Bu dosya, siteyi taramak ve keşfetmek için ziyaret eden
botlara, web sitesinde yer
alan hangi URL’leri tarayacağını söyleyecektir. Arama motoru
botlarının
oluşturabileceği istek yoğunluğunu azaltmak ve tarama
bütçesi optimizasyonu yapmak
için kullanılır.
Bir web sitesinin Google arama motoru sonuç sayfalarından
gösterilmesine engel
olmak için kullanılabilecek bir yöntem değildir. Bir web
sayfasını SERP’te
görünürlüğünü engellemek için meta robots etiketi “noindex”
kullanmak ya da sayfaya
şifre ile erişim koymak içeriğin gösterilmesini
engelleyecektir.
Web sitesinde yer alan sayfaları taramak ve keşfetmek için
gelen arama motoru
botlarına, 200 ‘OK’ HTTP durum koduna sahip sayfalardan
hangilerini taramasını ya
da hangilerinin taramaması gerektiği hakkında direktiflerin
bulunduğu basit metin
(txt) dosyasıdır.
Bu basit metin dosyası içerisinde yer alan direktiflere arama
motoru botları
genellikle uymaktadır. Web sitesini ziyaret eden arama
motoru botları, taramasına
izin verilmeyen sayfaları taramayacaktır. Bazı durumlarda
web sitesi içerisinde bu
taranmasını istemediğimiz sayfalara, diğer sayfalardan
dahili veya sitelerden
harici bağlantılar verilmişse, Google bu direktifi göz ardı
edip ilgili sayfayı
tarayacaktır.
Robots.txt dosyası içerisinde arama motoru botlarına
genellikle direktif olarak,
izin verildi ya da izin verilmedi komutu kullanılır.
SEO İpucu: Arama motoru botları bir web sitesini ziyaret
ettiğinde, robots.txt
dosyasını okumak istediğinde eğer ki HTTP 500 Internal
Server veya diğer sunucu
kaynaklı HTTP durum kodları ile karşılaşırsa, sitede bir
hata olduğunu düşünerek
taramayı durduracaktır. Bu durum sadece web sitesi için
değil, örneğin resimleriniz
için bir CDN kullandığınızı düşünürsek, Google ilgili
sayfada resim olmadığını
düşünecektir.
SEO İçin Robots.txt Dosyası Neden Önemlidir?
Web sitesini taramak ve keşfetmek için gelen arama motoru
tarayıcıları, web sitesi
içeriğini görüntülemeden önce ilk baktığı ve kontrol ettiği
şey robots.txt
dosyasıdır. Daha
sonrasında site haritasında yer alan URL’leri taramaya başlayacak
olan botlar, robots.txt dosyasında yer alan direktifler
uygulanacaktır. Bu sebepten
dolayı dosya içerisinde yer alan her bir direktifin doğru
olduğunu kesinlikle
kontrol etmeliyiz.
Robots.txt dosyasında yanlış kullanılan bir direktif, geçici
bir fatal hata olarak
değerlendirebilir. Yanlışlıkla web sitesini ya da bir
kısmını taramaya kapatılmış
olması geri dönülemez bir hata olarak
değerlendirilmemelidir. Hatanın en kısa
sürede fark edilip düzeltilmesi, kötü sonuçlar oluşmasını
engelleyecektir.
Örneğin, robots.txt dosyasında web sitesinin herhangi bir
kategori sayfasını
yanlışlıkla arama motoru botlarının taramasını engelleyecek
şekilde bir komut
olduğunu düşünelim, bu hatanın fark edilmemesi kötü
sonuçları beraberinde
getirebilir. Bu komut yanlışlıkla eklediğinde, bot ilgili
sayfanın çok fazla
bağlantısı yoksa muhtemelen taramayacak, fakat bir gün
sonrasında yanlış komut
kaldırıldığında ya da düzeltiğinde arama motoru botları
ilgili sayfayı taramaya
başlayacaktır.
SEO İpucu: Googlebot web sitesini ziyaret ettiğinde,
robots.txt dosyasını önbelleğe
kaydetmektedir. Bu önbelleği 24 saatte bir yenilemektedir.
Eğer ki robots.txt
dosyasında bir düzenleme yaptıysanız, yapılan düzenlemeler
24 saat sonra geçerli
olacaktır. Farklı bir örnek ise, özellikle e-ticaret web
sitelerinde tarama bütçesi
optimizasyonu için robots.txt dosyasından
faydalanılmalıdır. Arama motoru
botlarının bir web sitesini taramak için harcayacağı süre
oldukça kısıtlıdır. Bu
durumda siteyi ziyaret eden botların, önemli sayfaları daha
kolay ve hızlı taraması
için web sitesindeki dinamik olan veya önemsiz sayfalar
taramaya kapatılabilir.
Robots.txt Dosyası Nerede Bulunur? Arama botlarının bir web
sitesinin robots.txt dosyasını kolayca bulması için her
zaman sunucularda web sitesi dosyalarının bulunduğu ana kök
dizin altına şifresiz
olarak eklenir. Düz metin dosyası olarak oluşturulan bu
dosya tüm herkes tarafında
okunabilecek ve görüntülenebilecek şekilde yetkilendirme
yapılmaldır.
Bir web sitesinin robots.txt dosyasına ulaşmak ve
görüntülemek için örneğin, web
tarayıcısında adres çubuğuna analyticahouse.com/robots.txt
yazılması yeterli
olacaktır. Tüm tarama botları tarafından evrensel olarak
ulaşılabilecek URL yapısı
bu olduğundan asla, robots.txt dosyasının yeri
değiştirilmemelidir.
Web Sitesi İçin Robots.txt Dosyası Oluşturma
Bir web sitesi için robots.txt dosyası oluşturmak için
farklı yöntemler
bulunmaktadır. Tercih edilen yöntemlerden biri
uygulandığında, oluşturulan
robots.txt dosyası, yukarıda bahsettiğimiz gibi kök dizin
altına
yerleştirilmelidir.
Manuel olarak dosyayı oluşturmak istediğinizde,
bilgisayarınızda yüklü olan
herhangi bir metin düzenleyicisinden rahatlıkla
faydalanabilirsiniz. Yapmanız
gereken komutların editöre yazılması ve kaydederken dosya
ismine, “robots”
verilmeli, uzantısı ise “txt” olmalıdır.
Otomatik olarak oluşturulması için, online bir robots.txt
oluşturuculardan
faydalanabilir. Oluşturulan dosyayı kök dizin altına
yüklemeden önce mutlaka
kontrol etmelisiniz.
Manuel Olarak Robots.txt Dosyası Oluşturma
Manuel olarak robots.txt dosyası oluşturma için yukarıda
bahsettiğimiz üzere bir
editörden faydalanacağız. Sublime Text, notepad, notepad++
vb. uygulamalarında boş
bir dosya açtıktan sonra, dosya içerisine şu komut
yazılabilir:
İlk satırda kullanılan “User-agent:*” komutu, bir sonraki
satırlarda yer alan tüm
yönergelerin, (ikinci bir “User-agent:” komutu yoksa) siteyi
taramaya gelen tüm
botlar için geçerli olduğundan bahsetmektedir. İkinci
satırda yer alan “Allow:/” komutu, arama motoru botların sitenin tamamına
erişebileceğinden bahsetmektedir.
Üçüncü satırda yer alan “Sitemap:” komutu, arama motoru
botlarına web sitesinin site haritası dosyasının yerini ve URL adresini
belirtilerek, rahatça ulaşmasını sağlamaktadır.
Standart robots.txt komutlarını yazdıktan sonra,
kaydetmelisiniz. Kaydet işlemi
sırasında karşımıza çıkan pencerede dosya ismi kısmına
“robots.txt” yazmanız
yeterlidir.
Oluşturduğunuz dosyası, kök dizin altına yerleştirmeniz
gerekmektedir. Sitenizi
taramaya gelen botlar burada yazan yönergelere uyacaktır.
Robots.txt Dosyasında Kullanılması Tavsiye Edilen Komutlar
Arama motoru botlarının bir siteyi taramaya başlamadan önce
ilk olarak kontrol
ettiği robots.txt dosyaları, SEO performansınız açısından
oldukça önemlidir. Daha
önceden de bahsettiğimiz gibi yanlış kullanımı, web
sitenizin ya da önemli
sayfalarınızın SERP’te (Search Engine Results Page)
görünmesini engelleyebilir.
Tavsiye edilen robots.txt komutları:
Bu çok sık kullanılan robots.txt komutlarını ne işe
yaradığını öğrenelim.
User-agent,
Allow,
Disallow,
Sitemap,
User-Agent Komutu Nedir?
Robots.txt dosyasında yer alan “User-Agent” komutu web
sitesini ziyaret edecek olan
botlardan hangileri için hangi komut geçerli olduğunu
belirlemeye yarar. Web
sitesini ziyaret edenlerin içeriği görüntülemek için istekte
bulunduğu sırada “HTTP
Header” başlığı içinde isteği yapan kişi hakkında bilgi
aktarır.
HTTP istek başlığında yer alan user-agent bilgisi ayrıca log
dosyası analizi yapmak
istediğinizde size kullanıcı ile botları rahatlıkla ayırma
imkanı sunmaktadır.
İnternet ortamında yüzlerce arama motoru botları yer
almaktadır. Arama motoru
botları listesi:
Googlebot
Ahrefsbot
AppleBot
Screaming Frog SEO Spider
DuckDuckBot
YandexBot
Yahoo! Slurp
Yeti
Baiduspider
Bingbot
CatchBot
GalaxyBot
MJ12bot
msnbot
SBIder
SandCrawler
Scrubby
SearchSight
Seekbot
sogou spider
Google tarama botlarının listesi:
Googlebot
APIs-Google
AdsBot-Google-Mobile
AdsBot-Google
Mediapartners-Google
AdsBot-Google-Mobile-Apps
FeedFetcher-Google
Google-Read-Aloud
DuplexWeb-Google
googleweblight
Storebot-Google
User-agent direktifleri yazılırken, kullanım sırası oldukça
önemlidir.
User-agent ile ilgili bazı senaryolu örnekleri incelersek:
Robot.txt User-Agent Örneği-1:
Web sitesini taramaya gelen Googlebot’un iş başvurusu
sayfası altında yer alan
teşekkürler adlı sayfamızı taramasını istemezken, diğer
kalan tüm botların
taramasını istiyoruz.
User-agent: *
Allow: /
User-agent: Googlebot
Disallow: /is-basvurusu/tesekkurler
Yukarıda yer alan komut ile Googlebot, Teşekkürler sayfası
hariç diğer tüm
sayfaları tarayacaktır. İş başvurusu ve onun altındaki diğer
tüm sayfaları
tarayacaktır.
Googlebot’un iş başvurusu sayfası altında yer alan tüm
sayfaları taranmasını
engellemek ve Yandexbot’un iste sadece teşekkürler sayfasını
taramasını engellemek
istiyorsak.
User-agent: *
Allow: /
User-agent: Googlebot
Disallow: /is-basvurusu/
User-agent: Yandexbot
Disallow: /is-basvurusu/tesekkurler
Allow ve Disallow Komutu Nedir?
Robots.txt dosyasında yer alan “Allow:” komutu arama motoru
botlarına hangi
sayfaları taramasına izin verildiği hakkında bilgi aktarır.
Disallow komutu
kullanılmamışsa, arama motoru botları tüm sayfalara tarama
izni verildiği şeklinde
yorumlamaktadır.
Disallow komutu ise, arama motoru botlarına belirtilen URL
veya sayfayı taramaması
gerektiğini söylemektedir. Bu sayede arama motoru botları
için tarama bütçesi
optimizasyonu sağlanmış olacaktır.
3 farklı senaryo ile disallow ve allow komutlarının ne işe
yaradığını öğrenelim:
Senaryo - 1: Tarama botlarının web sitesinde ki URL veya
sayfaların tamamını
taramasına izin vermek istiyoruz?
user-agent: *
Allow:/
Senaryo - 2: Tarama botlarının web sitesinde ki URL veya
sayfaların tamamını
taramasına izin vermek istemiyoruz yani engellemek
istiyoruz?
user-agent: *
Disallow:/
Senaryo - 3: Tarama botlarının web sitesinde ki X sayfasını
taramamasını fakat X
sayfası altında yer alan Y sayfasını taramasını istiyoruz?
user-agent: *
Disallow:/x-sayfasi/
Allow: /x-sayfasi/y-sayfasi
Robots.txt Dosyasını Google Robots.txt Test Aracı ile Test
Etme
Oluşturmuş olduğunuz robots.txt komutlarında, Googlebot için
yanlış bir engelleme
ya da hatalı bir kullanım olup olmadığından emin değilseniz,
bu noktada size bir
yardımcı araç bulunuyor. Google’un kendi geliştirdiği
robots.txt test aracı ile
Googlebot’un sitenizde yer alan URL’lere tarama konusunda
izin verilip
verilmediğini görebilirsiniz.
Bu aracın eksik bir yanı, URL’leri toplu olarak kontrol
edemiyor olmanızdır. Bu
aracı kullanmak istediğinizde, Google Search Console
hesabınızın olması ve kayıtlı
olduğunuz e-posta adresi ile erişim sağlamanız
gerekmektedir. GSC hesabınızın mail
adresi ile erişim yapınız.
Resimde görüldüğü üzere ilgili alanlara, user-agent, allow
ve disallow komutlarını
uygulayabilirsiniz. Daha sonrasında kontrol etmek
istediğiniz URL’i yazarak “Test
Et” butonuna tıklayınca size izin verildiğini ya da izin
verilmediğini
söylemektedir.
Örneğin, tr path’i altında yer alan SEO sayfamıza
Googlebot’un taraması için izin
verilip verilmediğini kontrol etmek istediğimizde, en altta
sitemizin URL sonrası
başında / (slash) olmadan “tr/seo” yazıyoruz ve “test et”
butonuna tıklıyoruz.
Görüldüğü üzere hangi satırda izin verildiği göstermekte ve
sağ alt köşede “izin
verildi” yazmaktadır.
Örneğin, tr path’i altında yer alan çerez politikası
sayfamıza Googlebot’un
taraması için izin verilip verilmediğini kontrol etmek
istediğimizde, en altta
sitemizin URL sonrası başında yine / (slash) olmadan
“tr/cerez-politikasi”
yazıyoruz ve “test et” butonuna tıklıyoruz. Görüldüğü üzere
hangi satırda izin
verilmediğini göstermekte ve sağ alt köşede “engellendi”
yazmaktadır.
Google Search Console Robots.txt Hata ve Uyarıları
Web sitesinin Googlebot tarafından tarandığı zaman botun
karşılaştığı hata ve
durumlar hakkında bilgi aldığımız en faydalı yer Google
Search Console
hesabınızdır.
GSC hesabına giriş yaptıktan sonra sol tarafta yer alan
Index > Coverage (Dizin >
Kapsam) tıklamanız
gerekiyor. Daha sonrasında sağ tarafta yer alan grafiklerin
altında site robots.txt ile ilgili hata ve uyarılardan
bahsetmektedir.
Blocked by robots.txt: Taranmak istenen URL’lerin robots.txt
tarafından
engellendiğini belirtmektedir. Bunun için ek bir aksiyon
almanıza gerek yoktur.
Sadece kontrol etmeniz gereken, tarama esnasında site
haritasında yer alan URL’in
robots.txt tarafından engellenip engellenmediğini kontrol
etmelisiniz. Sizin için
önemli olan sayfaların durumunu kontrol etmelisiniz.
Indexed, though blocked
by robots.txt: Bazı URL’lerin robots.txt tarafından
engellemiş olmasına rağmen, dizine eklendiği bilgisini
vermektedir. Dizine eklenen
URL’leri kontrol etmeli ve indexlenmesini engelleyecek
şekilde aksiyon
alabilirsiniz. Örneğin bağlantı ise, nofollow etiketi
eklemek, sayfa ise noindex
etiketi eklemek gibi çözümler kullanabilirsiniz.
Robots.txt ile ilgili Dikkat Edilmesi ve Unutulmaması
Gerekenler
Web sitesini taramak isteyen botları yönlendirmek için
kullandığımız robots.txt
dosyası ile ilgili dikkat edilmesi ve unutulmaması
gerekenler:
Botlar bir siteyi taramak için geldiğinde ilk önce
robots.txt dosyasını kontrol
eder ve indirir.
Botların sitenin herhangi bir bölümüne erişmesini istemiyorsanız
“disallow:” komutu
kullanmalısınız.
Botlara yardımcı olmak için, robots.txt dosyasında site
haritasının URL’ini
“sitemap:” komutu ile belirtmelisiniz.
Robots.txt dosyası mutlaka kök dizin altında yer almalıdır.
siteadi
[.]com/robots.txt gibi olmalıdır.
Googlebot robots.txt dosyasını istediğinde eğer ki 429 HTTP
durum kodu haricinde,
herhangi bir 4XX HTTP durum kodu ile karşılaşırsa sitenin
robots.txt dosyası yok
gibi davranır. Bu durumda sitenin tüm sayfalarına ve
URL’lerini tarayabileceğini
belirtir.
429 veya 5XX HTTP durum kodlarından biri ile karşılaştığında
örneğin 500 HTTP durum
kodu ile karşılaşırsa sitenin taramaya kapalı olduğu
şeklinde yorumlar ve taramayı
durdurur.
Google web sitelerinin robots.txt dosyasını önbellekte
tutar. Son 24 saat
içerisinde yaptığınız bir değişikliğin etkili olabilmesi
için önbelleğin
yenilenmesini beklemek zorundasınız.
UTF-8 formatında ve txt uzantılı olmak zorundadır.
Google, robots.txt dosyalarını maksimum 500KiB’lık bir
boyutunu taramaktadır. Bu
boyut üzerinde yer alanların, bu sınıra kadar olan satırını
dikkate alır sonrasını
dikkate almayacaktır.
Robots.txt dosyasında yorum satırı oluşturmak için #
kullanmanız gerekmektedir.
Robots.txt dosyasında yer alan URL path’lerinde mutlaka
büyük ve küçük yazımına
dikkat ediniz.
Sonuç
Web sitesini taramak için gelen botlara hangi sayfaları
taramasını, hangi sayfaları
taramaması konusunda direktiflerin bulunduğu robots.txt
dosyası, SEO çalışmaları
için önemlidir.
Yorumlar
Yorum Gönder