Devre Dışı Bırak ve İzin Ver Direktifleri
Disallow
Sitenin bölümlerinin veya tek tek sayfaların atlanmasını önlemek için bu yönergeyi kullanın. Örneğin:
- hassas veri sayfaları;
- site arama sonuçları sayfaları;
- site trafik istatistikleri;
- yinelenen sayfalar;
- çeşitli kayıtlar;
- veritabanlarının hizmet sayfaları.
Not
Aramaya katılmaması gereken sayfalar için bir yönerge seçerken, adresleri GET parametreleri içeriyorsa yönerge kullanmak daha iyidir Clean-param, Disallow değil. Devre Dışı Bırak'ı kullanırken, bağlantı adresinin bir parametre olmadan çoğaltılmasını belirlemek ve yasaklanan sayfaların bazı göstergelerini iletmek mümkün olmayabilir.
Örnekler:
User-agent: Yandex
Disallow: / # tüm sitenin atlanmasını yasaklar
User-agent: Yandex
Disallow: /catalogue #, adresi /catalogue ile başlayan sayfaların atlanmasını yasaklar
User-agent: Yandex
Disallow: /page? # URL'si parametre içeren sayfaların geçişini yasaklar
Allow
Yönerge, sitenin bölümlerinin veya tek tek sayfalarının atlanmasına izin verir.
Örnekler:
User-agent: Yandex
Allow: /cgi-bin
Disallow: /
# Sayfalar hariç her şeyin indirilmesini yasaklar
# '/cgi-bin' ile başlayan
User-agent: Yandex
Allow: /file.xml
# file dosyasının indirilmesine izin verir.xml
Not
Yönergeler arasında boş satır beslemelerinin varlığı kabul edilemez User-agent
, Disallow
ve Allow
.
Direktiflerin paylaşılması
Direktifler Allow
ve Disallow
karşılık gelen User-agent
bloklar, URL önek uzunluğuna göre sıralanır (daha küçükten büyüğe) ve sırayla uygulanır. Sitenin belirli bir sayfası için birkaç yönerge uygunsa, robot sıralanan listede görünme sırasına göre ikincisini seçer. Bu nedenle, dosyadaki direktifleri takip etme sırası robots.txt
robot tarafından kullanımlarını etkilemez.
Not
Aynı uzunlukta öneklere sahip iki yönerge arasında bir çakışma olduğunda, yönergeye öncelik verilir Allow
.
# Orijinal robotlar.txt:
User-agent: Yandex
Allow: /
Allow: /catalog/auto
Disallow: /catalog
# Sıralı robotlar.txt:
User-agent: Yandex
Allow: /
Disallow: /catalog
Allow: /catalog/auto
# '/catalog' ile başlayan sayfaların indirilmesini yasaklar,
# ancak '/catalog/auto' ile başlayan sayfaların indirilmesine izin verir.
Genel bir örnek:
User-agent: Yandex
Allow: /archive
Disallow: /
# '/archive' içeren her şeye izin verir, geri kalanı yasaktır
User-agent: Yandex
Allow: /obsolete/private/*.html$ # html dosyalarına izin verir
# yol boyunca '/obsolete/private/...'
Disallow: /*.php$ # her şeyi yasaklar '*.php' bu sitede
Disallow: /*/private/ # içeren tüm alt yolları yasaklar
# '/private/', ancak yukarıdaki Allow iptal eder
# yasağın bir parçası
Disallow: /*/old/*.zip$ # her şeyi yasaklar '*.zip' içeren dosyalar
# yolda '/old/'
User-agent: Yandex
Disallow: /add.php?*user=
# tüm 'add komut dosyalarını yasaklar.php?'kullanıcı' parametresi ile'
Parametresiz izin Ver ve Devre Dışı Bırak yönergeleri
Direktifler parametre içermiyorsa, robot verileri aşağıdaki gibi dikkate alır:
User-agent: Yandex
Devre Dışı bırak: # İzin vermekle aynı: /
User-agent: Yandex
İzin ver: # robot tarafından sayılmaz
Özel karakterlerin kullanımı * ve $
İzin Ver ve Devre Dışı Bırak yönergelerinin yollarını belirtirken özel karakterler kullanabilirsiniz *
ve $
belirli normal ifadeleri belirtmek için
Özel karakter *
herhangi bir (boş dahil) karakter dizisi anlamına gelir. Örnekler:
User-agent: Yandex
Disallow: /cgi-bin/*.aspx # '/cgi-bin/example'ı yasaklar.aspx'
# ve '/cgi-bin/private/test.aspx'
Disallow: /*private # yalnızca '/private'i yasaklamakla kalmaz,
# ama aynı zamanda '/cgi-bin/private'
Dosyada açıklanan her kuralın sonuna doğru varsayılan olarak robots.txt
, özel bir karaktere atfedilir *
. Örnek:
User-agent: Yandex
Disallow: /cgi-bin* # sayfalara erişimi engelliyor
# '/cgi-bin' ile başlayan
Disallow: /cgi-bin # aynı şey
İptal etmek için *
Kuralın sonunda özel bir karakter kullanabilirsiniz $
, örneğin:
User-agent: Yandex
Disallow: /example$ # '/example'ı yasaklıyor,
# ancak '/example'ı yasaklamaz.html'
User-agent: Yandex
Disallow: /example # yasaklar ve '/example',
# ve '/örnek.html'
Özel karakter $
belirtilenleri yasaklamaz *
sonunda, yani:
User-agent: Yandex
Disallow: /example$ # yalnızca '/example'ı yasaklar
Disallow: /example*$ # ile aynı 'Disallow: /example'
# yasaklar ve /örnek.html ve /örnek
Sembol işleme #
Standarda uygun olarak, her Kullanıcı aracısı yönergesinden önce boş bir satır beslemesi eklemeniz önerilir. Sembol #
yorumları açıklamak için tasarlanmıştır. Bu karakterden sonra ve ilk satır beslemesinden önce olan her şey dikkate alınmaz.
Form adreslerine sahip sayfalar https://example.com.tr/page#part_1
arama motoru tarafından dizine eklenmez ve adrese giderlerdi https://example.com.tr/page
. Bu nedenle direktifte bağlantı olmadan sayfanın adresini belirtmeniz yeterlidir.
Bu özelliği dikkate almazsanız ve sembollü yasaklayıcı bir yönerge yazarsanız #
, tüm siteyi dizine eklemeden kapatabilir. Örneğin, formun yönergesi Disallow: /#
arama motoru bunu şu şekilde algılayacaktır: Disallow: /
— İndekslemenin tamamen yasaklanması.
Direktiflerin yorumlanmasına örnekler
User-agent: Yandex
Allow: /
Disallow: /
# her şeye izin verilir
User-agent: Yandex
Allow: /$
Disallow: /
# Ana sayfa hariç her şeye izin verilmez
User-agent: Yandex
Disallow: /private*html
# yasaktır ve '/private*html',
# ve '/private/test.html' ve '/private/html/test.aspx' vb.
User-agent: Yandex
Disallow: /private$
# yalnızca '/private' yasaktır
User-agent: *
Disallow: /
User-agent: Yandex
Allow: /
# Yandex'in robotu olduğu için
# kayıtları satırdaki 'User-agent:' varlığına göre ayırır,
# sonuç — her şeye izin verilir