Robots meta etiketi ve X-Robots-Tag spesifikasyonları

Özet

Bu dokümanda, sayfa ve metin düzeyinde ayarların, Google'ın içeriğinizi arama sonuçlarında sunma şeklini düzenlemek için nasıl kullanılabileceği anlatılmaktadır. Sayfa düzeyinde ayarları, HTML sayfalarına veya bir HTTP üst bilgisine meta etiket ekleyerek belirtebilirsiniz. Bir sayfa içindeki HTML öğelerinde data- nosnippet özelliğine sahip metin düzeyinde ayarlar belirtebilirsiniz.

Robots meta etiketini kullanma

Robots meta etiketi, tek bir sayfanın dizine nasıl eklenmesi ve Google Arama sonuçlarında kullanıcılara nasıl sunulması gerektiğini kontrol etmek için ayrıntılı, sayfaya özel bir yaklaşım kullanabilmenizi sağlar. Robots meta etiketini belirli bir sayfanın <head> bölümüne şu şekilde yerleştirin:

<!DOCTYPE html>
<html><head>
<meta name="robots" content="noindex" />
(…)
</head>
<body>(…)</body>
</html>

Yukarıdaki örnekte yer alan robots meta etiketi, arama motorlarına sayfayı arama sonuçlarında göstermemesini bildirir. name özelliğinin değeri (robots), yönergenin tüm tarayıcılar için geçerli olduğunu belirtir. Belirli bir tarayıcıya yönelik yönerge vermek için name özelliğinin robots değerini, ele almakta olduğunuz tarayıcının adıyla değiştirin. Belirli tarayıcılar, kullanıcı aracıları (user-agents) olarak da bilinir (bir tarayıcı, bir sayfayı istemek için kendi kullanıcı aracısını kullanır). Google'ın standart web tarayıcısının kullanıcı aracısının adı Googlebot şeklindedir. Yalnızca Googlebot'un sayfanızı taramasını engellemek için etiketi aşağıdaki şekilde güncelleyin:

<meta name="googlebot" content="noindex" />

Bu etiket artık özellikle Google'a bu sayfayı web arama sonuçlarında göstermemesini bildirmektedir. Hem name hem de content özelliği büyük/küçük harfe duyarlı değildir.

Arama motorlarının, farklı özellikler veya amaçlar için farklı tarayıcıları olabilir. Google tarayıcılarının tam listesini inceleyin. Örneğin, bir sayfayı Google'ın web arama sonuçlarında göstermek, ancak Google Haberler'de göstermemek için aşağıdaki meta etiketi kullanın:

<meta name="googlebot-news" content="noindex" />

Birden çok tarayıcıyı bağımsız olarak belirtmek için birden çok robots meta etiketi kullanın:

<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">

X-Robots-Tag HTTP üst bilgisini kullanma

X-Robots-Tag, belirli bir URL'yle ilgili HTTP üst bilgisi yanıtının bir öğesi olarak kullanılabilir. Bir robots meta etiketinde kullanılabilecek tüm yönergeler, bir X-Robots-Tag olarak da belirtilebilir. Tarayıcılara bir sayfayı dizine eklememelerini bildiren bir X-Robots-Tag üst bilgisinin yer aldığı bir HTTP yanıtı örneğini burada görebilirsiniz:

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noindex
(…)

Birden çok X-Robots-Tag üst bilgisini HTTP yanıtında birleştirebilir veya virgülle ayrılmış bir yönerge listesi belirtebilirsiniz. unavailable_after X-Robots-Tag ile birleşik bir noarchive X-Robots-Tag öğesinin yer aldığı bir HTTP üst bilgisi yanıtı örneğini burada görebilirsiniz.

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: noarchive
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)

X-Robots-Tag, isteğe bağlı olarak yönergelerden önce bir kullanıcı aracısı belirtebilir. Örneğin, aşağıdaki X-Robots-Tag HTTP üst bilgileri grubu, bir sayfanın farklı arama motorlarının, arama sonuçlarında gösterilmesine koşullu olarak izin vermek için kullanılabilir:

HTTP/1.1 200 OK
Date: Tue, 25 May 2010 21:42:43 GMT
(…)
X-Robots-Tag: googlebot: nofollow
X-Robots-Tag: otherbot: noindex, nofollow
(…)

Kullanıcı aracısı belirtilmeyen yönergeler tüm tarayıcılar için geçerli olur. HTTP üst bilgisi, kullanıcı aracısı adı ve belirtilen değerler, büyük/küçük harfe duyarlı değildir.

Geçerli dizine ekleme ve sunma yönergeleri

Aşağıdaki yönergeler, dizine eklemeyi ve sunmayı kontrol etmek için robots meta etiketi ve X-Robots-Tag ile birlikte kullanılabilir. Her bir değer belirli bir yönergeyi temsil eder. Aşağıdaki tabloda, Google'ın kullandığı tüm yönergeler ve anlamları gösterilmektedir. Birden çok yönerge, virgülle ayrılmış bir listede birleştirilebilir. Bu yönergeler büyük/küçük harfe duyarlı değildir. Arama sonuçlarında snippet, bir dokümanın kullanıcının sorgusuyla alaka düzeyini göstermek için kullanılan metnin kısa bir özetidir.

Yönergeler

all
Dizine ekleme veya sunmaya ilişkin herhangi bir kısıtlama yok. Bu yönerge, varsayılan değerdir ve açık olarak yazılmasının herhangi bir etkisi olmaz.
noindex
Bu sayfayı arama sonuçlarında gösterme.
nofollow
Bu sayfadaki bağlantıları izleme.
none
noindex, nofollow etiketine eşdeğer.
noarchive
Arama sonuçlarında Önbelleğe alınmış bir bağlantı gösterme.
nosnippet
Arama sonuçlarında bu sayfaya ait metin snippet'i veya video önizlemesi gösterme. Daha iyi bir kullanıcı deneyimiyle sonuçlandığında, bir statik resim küçük resmi (varsa) görünmeye devam edebilir. Bu, tüm arama sonucu biçimleri için geçerlidir (Google'da: web arama, Google Görseller, Keşfet).
max-snippet:[number]

Bu arama sonucu için metin nitelikli snippet olarak en fazla [number] karakter kullanın. (Bir URL'nin, arama sonuçları sayfasında birden fazla arama sonucu olarak görünebileceğini unutmayın.) Bu durum, resim veya video önizlemelerini etkilemez. Bu, tüm arama sonucu biçimleri için geçerlidir (Google web arama, Google Görseller, Keşfet, Asistan gibi). Ancak, bu sınır, bir yayıncının içerik kullanımı konusunda ayrı olarak izin verdiği durumlarda geçerli değildir. Örneğin, yayıncı sayfa içi yapılandırılmış veri biçiminde içerik sağlıyorsa veya Google ile bir lisans sözleşmesi varsa bu ayar, izin verilen daha spesifik kullanımları kesintiye uğratmaz. Ayrıştırılabilir bir [number] belirtilmediyse bu yönerge yoksayılır.

Özel değerler:

  • 0: Hiçbir snippet gösterilmez. nosnippet yönergesine eşdeğer.
  • -1: Snippet uzunluk sınırı yoktur.
  • Örnek:

    <meta name="robots" content="max-snippet:20">
    max-image-preview:[setting]

    Arama sonuçlarında bu sayfa için bir resim önizlemesinin maksimum boyutunu ayarlayın.

    Kabul edilen setting değerleri:

  • none: Resim önizlemesi gösterilmez.
  • standard: Varsayılan bir resim önizlemesi gösterilebilir.
  • large: Görüntü alanının genişliğine kadar, daha büyük bir resim önizlemesi gösterilebilir.
  • Bu, tüm arama sonucu biçimleri için geçerlidir (Google web arama, Google Görseller, Keşfet, Asistan gibi). Ancak, bu sınır, bir yayıncının içerik kullanımı konusunda ayrı olarak izin verdiği durumlarda geçerli değildir. Örneğin, yayıncı sayfa içi yapılandırılmış veri biçiminde içerik sağlıyorsa veya Google ile bir lisans sözleşmesi varsa bu ayar, izin verilen daha spesifik kullanımları kesintiye uğratmaz.

    Örnek:

    <meta name="robots" content="max-image-preview:standard">
    max-video-preview:[number]

    Arama sonuçlarında bu sayfadaki videolar için video snippet'i olarak en fazla [number] saniye kullanın.

    Diğer desteklenen değerler:

  • 0: max-image-preview ayarına göre, en fazla bir statik resim kullanılabilir.
  • -1: Sınır yoktur.
  • Bu, tüm arama sonucu biçimleri için geçerlidir (Google'da: web arama, Google Görseller, Google Videolar, Keşfet, Asistan). Ayrıştırılabilir bir [number] belirtilmediyse bu yönerge yoksayılır.

    Örnek:

    <meta name="robots" content="max-video-preview:-1">
    notranslate
    Arama sonuçlarında bu sayfanın çevirisini sunma.
    noimageindex
    Bu sayfadaki görselleri dizine ekleme.
    unavailable_after: [RFC-850 date/time]

    Belirtilen tarihten/saatten sonra arama sonuçlarında bu sayfayı gösterme. Tarih/saat değeri, RFC 850 biçiminde belirtilmelidir. Geçerli bir [date/time] belirtilmemişse yönerge yoksayılır. Varsayılan olarak içerik için son kullanma tarihi yoktur.

    Örnek:

    <meta name="robots" content="unavailable_after: Sunday, 01-Sep-24 01:00:00 PDT">

    Birleşik dizine ekleme ve sunma yönergelerini işleme

    Robots meta etiketi yönergelerini virgüllerle birleştirerek birden çok yönerge içeren bir talimat oluşturabilirsiniz. Web tarayıcılarına sayfayı dizine eklememelerini ve sayfadaki bağlantıların hiçbirini taramamalarını bildiren bir robots meta etiketi örneğini burada görebilirsiniz:

    <meta name="robots" content="noindex, nofollow">
    

    Metin snippet'ini 20 karakterle sınırlayan ve büyük resim önizlemesine izin veren bir örneği burada görebilirsiniz:

    <meta name="robots" content="max-snippet:20, max-image-preview:large">
    

    Farklı yönergelerle birlikte birden çok tarayıcının belirtildiği durumlarda arama motoru, negatif yönergelerin toplamını kullanır. Örneğin:

    <meta name="robots" content="nofollow">
    <meta name="googlebot" content="noindex">
    

    Bu meta etiketleri içeren sayfa, Googlebot tarafından tarandığında, bir noindex, nofollow yönergesi içeriyormuş gibi yorumlanır.

    data-nosnippet HTML özelliğini kullanma

    Bir HTML sayfasının snippet'i olarak kullanılmayacak metin bölümlerini tanımlayabilirsiniz. Bu, span, div, section öğelerinde data-nosnippet HTML özelliği ile HTML öğesi düzeyinde yapılabilir. data-nosnippet bir boole özelliği sayılır ve bir değerle veya değer olmadan geçerlidir. Makine okunabilirliğini sağlamak için HTML bölümü geçerli HTML olmalı ve ilgili tüm etiketler uygun bir şekilde kapatılmalıdır.

    Örnekler:

    <p>This text can be shown in a snippet
     <span data-nosnippet>and this part would not be shown</span>.</p>
    
    <div data-nosnippet>not in snippet</div>
    <div data-nosnippet="true">also not in snippet</div>
    
    <div data-nosnippet>some text</html>
    <!-- unclosed "div" will include all content afterwards -->
    
    <mytag data-nosnippet>some text</mytag>
    <!-- NOT VALID: not a span, div, or section -->
    

    Google genellikle sayfaları dizine eklemek amacıyla oluşturur, ancak oluşturma garanti edilmez. Bu nedenle, data-nosnippet ayıklama işlemi oluşturma öncesinde ve sonrasında gerçekleşebilir. Oluşturmadan kaynaklanan belirsizlikleri önlemek için mevcut düğümlerin data-nosnippet özelliğini JavaScript aracılığıyla eklemeyin veya kaldırmayın. JavaScript aracılığıyla DOM öğeleri eklerken, öğeyi başlangıçta sayfanın DOM'sine eklerken gereken şekilde data-nosnippet özelliğini ekleyin. Özel öğeler kullanılıyorsa ve data- nosnippet kullanmanız gerekiyorsa, bunları div, span veya section öğeleriyle sarmalayın veya oluşturun.

    Yapılandırılmış veriyi kullanma

    Robots meta etiketleri, Google'ın arama sonuçları olarak görüntülemek üzere web sayfalarından otomatik olarak ayıkladığı içerik miktarını belirler. Ancak, birçok yayıncı, belirli bilgileri arama sunumu için kullanılabilir hale getirmek amacıyla schema.org yapılandırılmış verilerini de kullanır. Robots meta etiketi sınırlamaları, bu yapılandırılmış verilerin kullanımını etkilemez. Web sayfalarınızla ilgili yapılandırılmış verilerin kullanımını yönetmek için yalnızca kullanılabilir hale getirmek istediğiniz verileri sağlamak üzere bilgiler ekleyerek veya kaldırarak yapılandırılmış veri türlerini ve değerlerin kendilerini değiştirebilirsiniz. Ayrıca, yapılandırılmış verilerin, bir data-nosnippet öğesi içinde belirtildiklerinde arama sonuçları için kullanılabilir durumda kalacaklarını unutmayın.

    X-Robots-Tag öğesinin pratik uygulaması

    X-Robots-Tag öğesini, sitenizin web sunucusu yazılımının yapılandırma dosyaları aracılığıyla site HTTP yanıtlarına ekleyebilirsiniz. Örneğin, Apache tabanlı web sunucularında .htaccess ve httpd.conf dosyalarını kullanabilirsiniz. HTTP yanıtlarıyla bir X-Robots-Tag kullanmanın yararı, bir sitede genel olarak uygulanan tarama yönergelerini belirtebilmenizdir. Düzenli ifadelerin desteklenmesi, çok esneklik sağlar.

    Örneğin, bir sitenin tamamındaki tüm .PDF dosyalarıyla ilgili HTTP yanıtına noindex, nofollow X-Robots-Tag eklemek için sitenin root .htaccess dosyasına veya Apache'de httpd.conf dosyasına ya da NGINX'te sitenin .conf dosyasına aşağıdaki snippet'i ekleyin

    Apache:

    <Files ~ "\.pdf$">
      Header set X-Robots-Tag "noindex, nofollow"
    </Files>
    

    NGINX:

    location ~* \.pdf$ {
      add_header X-Robots-Tag "noindex, nofollow";
    }
    

    HTML'de robots meta etiketlerini kullanmanın imkansız olduğu resim dosyaları gibi HTML dışı dosyalar için X-Robots-Tag üst bilgisini kullanabilirsiniz. Site genelinde resim dosyalarına (.png, .jpeg, .jpg, .gif) bir noindex X-Robots-Tag yönergesi eklemeyle ilgili bir örneği burada görebilirsiniz:

    Apache:

    <Files ~ "\.(png|jpe?g|gif)$">
      Header set X-Robots-Tag "noindex"
    </Files>
    

    NGINX:

    location ~* \.(png|jpe?g|gif)$ {
      add_header X-Robots-Tag "noindex";
    }
    

    Taramayı dizine ekleme/sunma yönergeleriyle birleştirme

    Robots meta etiketleri ve X-Robots-Tag HTTP üst bilgileri, bir URL tarandığında keşfedilir. Bir sayfanın taranması robots.txt dosyası aracılığıyla reddedilirse dizine ekleme veya sunma yönergeleriyle ilgili bilgiler bulunamaz, dolayısıyla yoksayılır. Dizine ekleme veya sunma yönergelerinin izlenmesi gerekiyorsa bu yönergeleri içeren URL'lerin taranması reddedilemez.