Robots.txt Nedir? Ne işe yarar? Nasıl Oluşturulur?


Robots.txt internet ortamı üzerinde tüm arama motorları ve örümceklerin sizin sitenizde gezmesi yada gezmemesi için ayarlanması gereken bir dosyadır. Bu dosya sayesinde siteniz içerisindeki belirli bölümleri belirli örümceklere kapatabilir/açabilirsiniz. Site kodlamasında yapmış olduğunuz meta tagında robot durumunu belirtmeniz ile aynı işi yapmaktadır. Meta tagları yanı sıra bu robots.txt daha kapsamlı olarak ayarlamalara sahip olduğundan kullanılması tavsiye edilmektedir. Kısaca Bilgi Vermek Gerekirse;

+ User-agent: aşağıdaki kuralın geçerli olduğu robot
+ Disallow: engellemek istediğiniz URL
+ Allow: izin vermek istediğiniz URL (Engellenmediği sürece bütün veriler izin vermişmiş sayılır.)

Bazı örnekler ile olayı daha iyi anlamanızı şu şekilde sağlayabilirim.

Sadece Google Botlarının Gelmesini Engellemek için
User-agent: Googlebot
Disallow: /admin/


Yukarıda Google tarafından gelen botu engellemiş olduk. Böylece Google botu admin klasörüne giriş yapmayacaktır. Peki, bütün botlarda bunu nasıl engelleyebiliriz? İşte şöyle;

User-agent: *
Disallow: /admin/


Yukarıdaki kod ile bütün botları engellemiş olduk. Hiçbir bot admin klasörüne giremeyecektir. Burada bulunan * işareti evrensel seçicidir ve hepsini seç ifadesi yerine kullanılmaktadır. Şimdi dizinde bulunan bütün her şey için işlemleri nasıl yapılır bunu görelim;

User-agent: *
Disallow: /


Yukarıda Disallow değerine hiçbir değer girmediğimizden bütün dizin ve dosyalar anlamındadır. Burada bütün dizin ve dosyalar, tüm botlar tarafından girilmesi, indexlenmesi yasaklanmıştır.

Engelleme işlemleri ile ilgili örnekler ve açıklamalar şu şekildedir;

Sitenin tamamını engellemek için düz eğik çizgi kullanın.
Disallow: /

Bir dizini ve o dizinin içinde bulunan tüm öğeleri engellemek için dizin adının sonuna bir düz eğik çizgi koyun. Böylece o klasör ve içinde yer alan her şey engellenecektir.
Disallow: /admin/

Bir sayfayı engellemek için şu şekilde tanımlama yapmak gerekmektedir. Örnekteki gibi sadece admin.html dosyası engellenecektir.
Disallow: /admin.html

Belirli bir görseli engellemek için görsel materyalin bulunduğu adresi tam yazmalısınız. Örneğin Google görsel botlarından engellemek istiyorsak o zaman şöyle bir kodlama yapmamız gerekmektedir.
User-agent: Googlebot-Image
Disallow: /resimler/gizli.jpg


Sadece belirli bir görseli engellemek istemiyor, bütün dizinde yer alan görselleri engellemek için şu şekilde kodlama yapmamız gerekmektedir.
User-agent: Googlebot-Image
Disallow: /


Engellemek istediğiniz görsel sadece uzantıya göre yapacaksanız o zaman uzantısını belirterek o uzantıya ait bütün görselleri engelleyebilirsiniz. Örneğin .jpg uzantısına ait olan görselleri engelleyelim. Sadece görseller için değil uzantısı farklı olanlar için de bu kullanılır. 2. Örnek ise bu açıklamaya örnektir.
User-agent: Googlebot-Image
Disallow: /*.jpg$

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


Yukarıdaki $ işareti sonu anlamındadır. Yani o işaretin solunda yer alan değer bu ifade ile bitenleri temsil etmektedir. Mesela şöyle bir örnekleme yapalım. Sonu xml ile biten bütün verileri engelleyelim.
User-agent: Googlebot
Disallow: /*.xml$


NOT: Bütün yazı boyunca yer alan * işaretinin evrensel seçici olduğundan bahsettik. Evrensel yani bütümü seçmeyip sadece tek bir karakter seçmek isteyenler ise ? İşaretini kullanabilirler.

NOT: robots.txt dosyanızı sitenizin bulunduğu ana dizine atmanız gerekmektedir. Yani şöyle;
ibrahimcevruk.com/robots.txt DOĞRU olandır.
ibrahimcevruk.com/site/robots.txt YANLIŞ'tır.

Son Olarak Bütün Öğrendiklerimizi Bir Örnekte Birleştirelim;

1 - Sitede admin panelinin, üyelerin üye girişi yapmadan erişilmesini istemediğimiz alanları engelleyelim. Şimdi engellememiz gereken ilk klasörümüz Yönetim işlemlerinin yapıldığı klasörü ve altında yer alan dosyalardır.

2 - Üye olan birisi üye girişi yapmışsa kayıt ol sayfasına mantıken ulaşmaması gerektir. O zaman kayıt ol sayfası riskli bir alan olduğundan isterseniz bunu da gizletelim.

3 - Diyelim ki yine admin klasöründe yer alan görsel verileri de gizlilikten dolayı engellemek istiyoruz o zaman

1-Disallow: /admin/
2-Disallow: /kayitol.php
3-Disallow: /admin/resimler/

Yukarıdaki bilgileri bir txt içine yazacaksak o zaman bu yazacaklarımız şu şekilde olacaktır;

User-agent: *
Disallow: /admin/
Disallow: /kayitol.php
Disallow: /admin/resimler/

Yukarıdaki bilgileri robots.txt ile sitenize atarsanız sizin için güvenli, faydalı bir işlem olacaktır. Arama motorları sitenize ilk uğradığında txt dosyasına bakacak ve sonrasında engellenen yerlere uğramadan bunların dışında kalan yerleri tarayacaktır.
- 14.05.2013 / 09:42:56 0

Sosyal Medya Paylaşım Alanı

Bunlarda İlginizi Çekebilir

7:26 jQuery Dersleri

jQuery ile Renkli Listeleme Yapımı

Kategori: jQuery Dersleri | 03.05.2013
9:04 Php Dersleri

Basit Bir Argo Söz Filtresi Oluşturma

Kategori: Php Dersleri | 04.05.2013
Php Dersleri

Php ile PSD Dosyasını Okutmak | Resmi Görüntülemek

Kategori: Php Dersleri | 27.09.2013
Genel Makaleler

ibrahim Çevrük Chip Dergisi Ayın Web Sitelerinde!

Kategori: Genel Makaleler | 03.05.2013
12:30 Php Dersleri

Herhangi Bir Tarihi time() Değerine Çevirme

Kategori: Php Dersleri | 03.05.2013

Yorum Listesi (2) # YorumYap

  • cihat2561 (08.06.2013 - 12:49:35)
    Güzelmiş..! Web taraıma daha yeni başlıyorjm..! bunlar benim için çok iyi oldu
  • emre1113 (09.02.2015 - 10:47:47)
    Guzel bir anlatim olmuş Teşekkürler peki robots.txt dosyasina erişimi nasil engelleyecegiz ornegin http://ibrahimcevruk.com/robots.txt yazinca sizin koymus oldugunuz sinirlamalari goruyoruz??

Hadi Sende Yorum Yap!

Yorum Gönderilmiştir. Onaylandıktan Sonra Mesajınız Yayınlanacaktır.