Robots.txt dosyası oluşturma
Başlarken
Robots.txt dosyası, sitenizin kök dizininde bulunur. Dolayısıyla robots.txt dosyası, www.example.com
sitesinde www.example.com/robots.txt
adresindedir. 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:
# Group 1 User-agent: Googlebot Disallow: /nogooglebot/ # Group 2 User-agent: * Allow: / Sitemap: http://www.example.com/sitemap.xml
Açıklama:
-
"Googlebot" adlı kullanıcı aracısının,
http://example.com/nogooglebot/
dizinini veya herhangi bir alt dizini taramasına izin verilmez. - Diğer tüm kullanıcı aracılarının sitenin tamamını taramasına izin verilir. (Tam erişim sağlandığı varsayımından hareketle bu durum belirtilmese dahi sonuç aynı olacaktır.)
-
Sitenin site haritası dosyası
http://www.example.com/sitemap.xml
adresinde bulunmaktadır.
Daha fazla örnek için söz dizimi bölümüne bakın.
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üzenleyici, 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 kıvrık tırnak gibi beklenmedik karakterler ekleyebilir).
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ı (örneğin,
http://website.example.com/robots.txt
) veya standart olmayan bağlantı noktaları (örneğin,http://example.com:8181/robots.txt
) için geçerli olabilir. #
işareti ile başlayan her tür içerik yorum olarak değerlendirilir.
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
,http://www.example.com/file.asp
için geçerlidir, ancakhttp://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] Yönerge, kuralın geçerli olduğu arama motoru tarayıcısı olarak bilinen otomatik istemcinin adını belirtir. Bu, tüm kural gruplarının ilk satırıdır. Google kullanıcı aracısı adları, Google kullanıcı aracısı listesinde yer alır. 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. Örnekler:# Example 1: Block only Googlebot User-agent: Googlebot Disallow: / # Example 2: Block Googlebot and Adsbot User-agent: Googlebot User-agent: AdsBot-Google Disallow: / # Example 3: Block all but AdsBot crawlers User-agent: * Disallow: /
-
Disallow:
[Kural başına en az bir veya daha fazlaDisallow
ya daAllow
girişi] Kullanıcı aracısının taramasını istemediğiniz, kök alana göreli olarak belirtilen dizin veya sayfa. Kural bir sayfaya işaret ediyorsa tarayıcıda gösterildiği şekliyle tam sayfa adı olmalıdır; bir dizin ile ilgiliyse/
işaretiyle bitmelidir. -
Allow:
[Kural başına en az bir veya daha fazlaDisallow
veyaAllow
] Az önce bahsedilen kullanıcı aracısı tarafından taranabilecek 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 üzereDisallow
parametresini geçersiz kılmak için kullanılır. Tek bir sayfa için tarayıcıda gösterildiği şekliyle tam sayfa adı belirtilmelidir. Dizin olması durumunda kural,/
işaretiyle bitmelidir. -
Sitemap:
[İsteğe bağlı, dosya başına sıfır veya daha fazla] Bu web sitesinin site haritasının konumudur. Site haritası URL'si, tam nitelikli URL olmalıdır; Google, http/https/www.non-www alternatiflerini 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:Sitemap: https://example.com/sitemap.xml Sitemap: http://www.example.com/sitemap.xml
sitemap
dışındaki tüm yönergeler yol ön eki, son eki veya dizenin tamamı için *
joker karakterini destekler.
Bu yönergelerin hiçbiriyle eşleşmeyen satırlar yok sayı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:
# Block googlebot from example.com/directory1/... and example.com/directory2/... # but allow access to directory2/subdirectory1/... # All other directories on the site are allowed by default. User-agent: googlebot Disallow: /directory1/ Disallow: /directory2/ Allow: /directory2/subdirectory1/ # Block the entire site from anothercrawler. User-agent: anothercrawler Disallow: /
Tam robots.txt söz dizimi
Tam robots.txt söz dizimini burada bulabilirsiniz. Robots.txt söz dizimi öğrenilmesi önem taşıyan bazı karmaşık parçalara sahip 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. |
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 görseli engelleme: |
User-agent: Googlebot-Image Disallow: /images/dogs.jpg |
Google Görseller'den sitenizdeki tüm görselleri engelleme |
User-agent: Googlebot-Image Disallow: / |
Belirli türdeki dosyaların taranmasına izin vermeme (örneğin, |
User-agent: Googlebot Disallow: /*.gif$ |
Sitenizin tamamının taranmasına izin vermeme; ancak bu sayfalarda AdSense reklamları gösterme ve |
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$ |