Robots meta etiketi, data-nosnippet ve X-Robots-Tag teknik özellikleri

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üzeyindeki ayarları, HTML sayfalarına veya bir HTTP üstbilgisine meta etiket ekleyerek belirtebilirsiniz. Bir sayfa içindeki HTML öğelerinde data-nosnippet özelliğine sahip metin düzeyinde ayarlar belirtebilirsiniz.

Bu ayarların, yalnızca tarayıcıların bu ayarları içeren sayfalara erişimine izin verilirse okunabileceğini ve uygulanabileceğini unutmayın.

Arama motoru tarayıcılarına <meta name="robots" content="noindex"> kuralı uygulanır. AdsBot-Google gibi arama yapmayan tarayıcıları engellemek için belirli tarayıcıyı hedefleyen kurallar eklemeniz gerekebilir (örneğin, <meta name="AdsBot-Google" content="noindex">).

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>

Bu örnekte, robots meta etiketi, arama motorlarına sayfayı arama sonuçlarında göstermemesini bildirir. name özelliğinin değeri (robots), kuralın tüm tarayıcılar için geçerli olduğunu belirtir. Hem name hem de content özelliği büyük/küçük harfe duyarlı değildir. Belirli bir tarayıcıya özel yönerge vermek için name özelliğinin robots değerini, ilgili tarayıcının kullanıcı aracısı jetonuyla değiştirin. Google, robots meta etiketinde iki kullanıcı aracısı jetonunu destekler ve diğer değerler yoksayılır:

  1. googlebot: Tüm metin sonuçları için.
  2. googlebot-news: Tüm haber sonuçları için.

Örneğin, Google'a arama sonuçlarında bir snippet'i göstermemesini özel olarak belirtmek için meta etiketinin adı olarak googlebot öğesini belirtebilirsiniz:

<meta name="googlebot" content="nosnippet">

Snippet'in tamamını Google'ın web arama sonuçlarında gösterirken Google Haberler'de göstermemek için meta etiketinin adını googlebot-news olarak belirleyin:

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

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

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

HTML olmayan kaynakların (ör. PDF dosyaları, video dosyaları veya resim dosyaları) dizine eklenmesini engellemek için bunun yerine X-Robots-Tag yanıt başlığını kullanın.

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 kurallar, 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 kural listesi belirtebilirsiniz. unavailable_after X-Robots-Tag ile birleşik bir noimageindex X-Robots-Tag öğesinin yer aldığı 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: noimageindex
X-Robots-Tag: unavailable_after: 25 Jun 2010 15:00:00 PST
(…)

X-Robots-Tag, isteğe bağlı olarak kurallardan ö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ındaki 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 kurallar 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 kuralları

Aşağıdaki kurallar, makine tarafından okunabilir biçimde de bulunur. Bu kurallar robots meta etiketi ve X-Robots-Tag koduyla snippet'lerin dizine eklenmesini ve sunulmasını kontrol etmek için kullanılabilir. Her değer belirli bir kuralı temsil eder. Birden çok kural, virgülle ayrılmış bir listede veya ayrı meta etiketlerde birleştirilebilir. Bu kurallar büyük/küçük harfe duyarlı değildir.

Kurallar

all

Dizine ekleme veya sunmaya ilişkin herhangi bir kısıtlama yok. Bu kural, varsayılan değer olup açık olarak yazılmasının herhangi bir etkisi olmaz.

noindex

Bu sayfayı veya kaynağı arama sonuçlarında gösterme. Bu kuralı belirlemezseniz sayfa veya kaynak, dizine eklenerek arama sonuçlarında gösterilebilir.

Google'dan bilgi kaldırmak için adım adım açıklamalı kılavuzumuzdan yardım alabilirsiniz.

nofollow

Bu sayfadaki bağlantıları izleme. Bu kuralı belirlemezseniz Google, bağlantı verilen sayfaları keşfetmek için sayfadaki bağlantıları kullanabilir. nofollow hakkında daha fazla bilgi edinin.

none

noindex, nofollow etiketine eş değer.

nositelinkssearchbox

Bu sayfanın arama sonuçlarında site bağlantısı arama kutusu gösterme. Bu kuralı belirlemezseniz Google, sitenizdeki diğer doğrudan bağlantılarla birlikte arama sonuçlarında sitenize özel bir arama kutusu oluşturabilir.

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 (Google'da: web arama, Google Görseller, Keşfet, yapay zeka özetleri) geçerlidir ve içeriğin, yapay zeka özetleri için doğrudan giriş olarak kullanılmasını da engeller.

Bu kuralı belirlemezseniz Google, sayfada bulunan bilgileri kullanarak bir metin snippet'i ve video önizlemesi oluşturabilir.

İçeriğinizin belirli bölümlerinin arama sonucu snippet'lerinde görünmesini engellemek için data-nosnippet HTML özelliğini kullanın.

indexifembedded

Bir sayfa başka bir sayfaya yerleştirilmişse noindex kuralı olsa bile Google, iframes veya benzer HTML etiketleri aracılığıyla sayfayı dizine ekleyebilir.

indexifembedded özelliği yalnızca noindex ile birlikte kullanıldığında etkilidir.

max-snippet: [sayı]

Bu arama sonucu için metin nitelikli snippet olarak en fazla [sayı] 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 (ör. Google web arama, Google Görseller, Keşfet, Asistan, yapay zeka özetleri) geçerlidir ve içeriğin ne kadarının yapay zeka özetlerinde doğrudan giriş olarak kullanılabileceğini de sınırlandırır. 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 [sayı] belirtilmediyse bu kural yok sayılır.

Bu kuralı belirlemezseniz Google, snippet'in uzunluğuna karar verir.

Özel değerler:

  • 0: Hiçbir snippet gösterilmez. nosnippet etiketine eş değer.
  • -1: Google hem kullanıcıların içeriğinizi keşfetmesine yardımcı olmak hem de kullanıcıları sitenize yönlendirmek için en etkili olacağını belirlediği snippet uzunluğunu seçer.

Örnekler:

Bir snippet'in arama sonuçlarında gösterilmesini durdurmak için:

<meta name="robots" content="max-snippet:0">

Snippet'te en fazla 20 karakter gösterilmesine izin vermek için:

<meta name="robots" content="max-snippet:20">

Snippet'te gösterilebilecek karakterlerin sayısında bir sınır olmadığını belirtmek için:

<meta name="robots" content="max-snippet:-1">

max-image-preview: [ayar]

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

max-image-preview kuralını belirlemezseniz Google, varsayılan boyutta bir resim önizlemesi gösterebilir.

Kabul edilen [ayar] 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 (Google web arama, Google Görseller, Keşfet, Asistan gibi) geçerlidir. 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 (AMP ve bir makalenin standart sürümleri gibi) 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.

AMP sayfaları ve bir makalenin standart sürümü Arama veya Keşfet'te sunulduğunda Google'ın daha büyük boyutta küçük resimler kullanmasını istemiyorsanız max-image-preview değeri olarak standard veya none belirtin.

Örnek:

<meta name="robots" content="max-image-preview:standard">

max-video-preview: [sayı]

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

max-video-preview kuralını belirlemezseniz Google, arama sonuçlarında bir video snippet'i gösterebilir ve önizlemenin ne kadar sürebileceği konusundaki kararı Google'a bırakmış olursunuz.

Özel değerler:

  • 0: En çok, max-image-preview ayarına uygun 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 [sayı] belirtilmediyse bu kural yok sayılır.

Örnek:

<meta name="robots" content="max-video-preview:-1">

notranslate

Arama sonuçlarında bu sayfanın çevirisini sunma. Bu kuralı belirlemezseniz Google, arama sorgusunun dilinde mevcut olmayan bir arama sonucuna ait başlık bağlantısı ve snippet'in çevirisini sunabilir. Kullanıcı çevrilmiş başlık bağlantısını tıklarsa sayfadaki diğer tüm kullanıcı etkileşimleri Google Çeviri üzerinden yapılır ve sonrasında gelen bağlantılar da otomatik olarak çevrilir.

noimageindex

Bu sayfadaki görselleri dizine ekleme. Bu yönergeyi belirlemezseniz sayfadaki görseller dizine eklenebilir ve arama sonuçlarında gösterilebilir.

unavailable_after: [tarih/saat]

Belirtilen tarihten/saatten sonra arama sonuçlarında bu sayfayı gösterme. Tarih/saat değeri yaygın şekilde benimsenen bir biçimde belirtilmelidir. Örneğin, bunlarla sınırlı olmamakla birlikte, RFC 822, RFC 850 ve ISO 8601 gibi. Geçerli bir tarih/saat belirtilmezse kural yok sayılır. Varsayılan olarak içerik için son kullanma tarihi yoktur.

Bu kuralı belirlemezseniz bu sayfa, arama sonuçlarında süresiz olarak gösterilebilir. Googlebot, belirtilen tarih ve saatten sonra URL'nin tarama hızını önemli ölçüde düşürür.

Örnek:

<meta name="robots" content="unavailable_after: 2020-09-21">

Geçmiş ve diğer kullanılmayan kurallara referans

Aşağıdaki kurallar Google Arama tarafından kullanılmaz ve yoksayılır. Kullanıcılar bunlar hakkında sıklıkla soru sorduğu veya geçmişte kullandığımız için bu kuralları buraya ekliyoruz.

Geçmiş ve diğer kullanılmayan kuralların listesi

noarchive

Önbelleğe alınan bağlantı özelliği artık kullanılmadığından Google Arama artık önbelleğe alınan bir bağlantının arama sonuçlarında gösterilip gösterilmeyeceğini kontrol etmek için noarchive kuralını kullanmaz.

nocache

Google Arama, nocache kuralını kullanmaz.

Birleşik dizine ekleme ve sunma kurallarını işleme

Birden çok kural içeren talimat oluşturabilirsiniz. Bunun için robots meta etiketi kurallarını virgüllerle birleştirebilir veya birden fazla meta etiket kullanabilirsiniz. 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:

Virgülle ayrılmış liste

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

Birden çok meta etiket

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

Metin snippet'ini 20 karakterle sınırlayan, 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ı kurallarla birlikte birden çok tarayıcının belirtildiği durumlarda arama motoru, negatif kuralların 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 kuralı 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 işlem span, div, section öğelerinde data-nosnippet HTML özelliği ile HTML öğesi düzeyinde yapılabilir. data-nosnippet, bir boole özelliği olarak kabul edilir. Tüm boole özelliklerinde olduğu gibi, belirtilen herhangi bir değer yok sayılır. 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="false">also not in snippet</div>
<!-- all values are ignored -->

<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 -->

<p>This text can be shown in a snippet.</p>
<div data-nosnippet>
<p>However, this is not in snippet.</p>
<ul>
  <li>Stuff not in snippet</li>
  <li>More stuff not in snippet</li>
</ul>
</div>

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ı, diğer reklam öğeleri için belirtilen yapılandırılmış verinin article.description ve description değerleri dışında bu yapılandırılmış verilerin kullanımını etkilemez. Bu description değerlerine dayalı önizleme maksimum uzunluğunu belirtmek için max-snippet kuralını kullanın. Örneğin, bir sayfadaki recipe yapılandırılmış verisi, metin önizlemesi başka türlü sınırlandırılacak olsa bile, yemek tarifi bandına dahil edilmeye uygundur. Bir metin önizlemesinin uzunluğunu max-snippet ile sınırlayabilirsiniz ancak zengin sonuçlar için bilgiler yapılandırılmış veri kullanılarak sağlandığında, robots meta etiketi geçerli olmaz.

Web sayfalarınızla ilgili yapılandırılmış verilerin kullanımını yönetmek için bilgiler ekleyerek veya kaldırarak yapılandırılmış veri türlerini ve değerlerin kendilerini değiştirin. Bu şekilde, yalnızca sunmak istediğiniz verileri sağlamış olursunuz. 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 kurallarını belirtebilmenizdir. Normal ifadelerin desteklenmesi büyük bir esneklik sağlar.

Örneğin, site genelinde 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 .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 etiketini kullanabilirsiniz. Site genelinde resim dosyalarına (.png, .jpeg, .jpg, .gif) noindex X-Robots-Tag kuralı 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";
}

Ayrı ayrı statik dosyalar için X-Robots-Tag üst bilgilerini de ayarlayabilirsiniz:

Apache

# the htaccess file must be placed in the directory of the matched file.
<Files "unicorn.pdf">
Header set X-Robots-Tag "noindex, nofollow"
</Files>

NGINX

location = /secrets/unicorn.pdf {
add_header X-Robots-Tag "noindex, nofollow";
}

Robots.txt kurallarını, dizine ekleme ve sunma kurallarıyla 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 kurallarıyla ilgili bilgiler bulunamaz, dolayısıyla yoksayılır. Dizine ekleme veya sunma kurallarının izlenmesi gerekiyorsa bu kuralları içeren URL'lerin taranması reddedilemez.