Robots.txt Dosyası: Arama Motoru Botlarına Yönergeler

09 Ekim 2026 · 10 dk okuma

Robots.txt dosyası, web sitesi yöneticilerinin arama motoru botlarına (örümcekler veya crawler'lar) yönelik talimatlarını içeren, düz metin biçiminde bir dosyadır. Bu dosya, botların siteyi tararken hangi bölümlerine erişebileceğini veya erişemeyeceğini belirtir. Amaç, arama motorlarının siteyi daha verimli taramasını sağlamak ve sunucu kaynaklarının gereksiz yere kullanılmasını önlemektir. Robots.txt, 1994 yılında Martijn Koster tarafından önerilmiş ve o zamandan beri yaygın olarak kullanılan bir standart haline gelmiştir. Günümüzde Google, Bing, Yandex gibi büyük arama motorları bu dosyaya uymaktadır. 2019 yılında Google, robots.txt'nin resmi bir internet standardı haline getirilmesi için bir RFC taslağı sunmuştur, ancak bu süreç henüz tamamlanmamıştır.

Robots.txt Dosyasının Tanımı ve Kullanım Amacı

Robots.txt dosyası, bir web sitesinin kök dizininde yer alan ve arama motoru botlarına yönelik kurallar içeren bir metin dosyasıdır. Bu dosya, botların siteyi tararken hangi sayfalara erişebileceğini, hangilerine erişemeyeceğini belirtir. Örneğin, yönetim panelleri, geçici dosyalar veya kullanıcıya özel sayfalar gibi taranması istenmeyen bölümler bu dosya aracılığıyla engellenebilir. Robots.txt, aynı zamanda site haritasının konumunu belirterek arama motorlarının site yapısını daha iyi anlamasına yardımcı olabilir. Ancak, robots.txt dosyası bir güvenlik aracı değildir; yalnızca kurallara uyan botlar için geçerlidir.

Robots.txt dosyası, tarayıcılar tarafından değil, yalnızca botlar tarafından okunur ve yorumlanır. Kullanıcılar bu dosyayı doğrudan görüntüleyebilir, ancak bu dosyanın varlığı site içeriğini etkilemez. Dosya, site yöneticilerine botların tarama davranışını yönlendirme imkânı tanır. Örneğin, bir e-ticaret sitesi, ürün filtreleme sayfalarının taranmasını engelleyerek sunucu yükünü azaltabilir ve arama motorlarının gerçek ürün sayfalarına odaklanmasını sağlayabilir.

Robots.txt Dosyasının Sözdizimi ve Temel Direktifler

Robots.txt dosyası, satır bazlı bir yapıya sahiptir. Her satır bir direktif içerir ve satırlar büyük/küçük harfe duyarlıdır. Yorum satırları (#) ile başlar ve botlar tarafından dikkate alınmaz. Dosyada kullanılan başlıca direktifler şunlardır:

  • User-agent: Hangi bot için kural tanımlandığını belirtir. Örneğin, "User-agent: Googlebot" yalnızca Google'ın botunu hedef alır. Tüm botlar için "*" kullanılır.
  • Disallow: Botların erişemeyeceği dizinleri veya sayfaları belirtir. Örneğin, "Disallow: /private/" ifadesi, /private/ dizinine erişimi engeller.
  • Allow: Disallow ile engellenen bir dizin içinde belirli bir alt dizine veya sayfaya izin vermek için kullanılır. Örneğin, "Allow: /private/public/" gibi.
  • Sitemap: Site haritasının tam URL'sini belirtir. Bu direktif, arama motorlarının site yapısını daha iyi anlamasına yardımcı olur.
  • Crawl-delay: Botların sunucuya yapacağı istekler arasındaki minimum gecikmeyi saniye cinsinden belirtir. Ancak bu direktif tüm botlar tarafından desteklenmez.

Basit bir robots.txt dosyası, tüm botlar için geçerli kurallar içerebilir. Örneğin, tüm botların /admin/ dizinine erişimini engellemek için "User-agent: *" ve "Disallow: /admin/" satırları kullanılır. Belirli bir bot için farklı kurallar tanımlamak mümkündür. Örneğin, "User-agent: Googlebot" satırından sonra "Disallow: /gecici/" yazılarak yalnızca Googlebot'un bu dizine erişimi engellenebilir.

User-agent Direktifi

User-agent satırı, hangi botun hedeflendiğini belirtir. Bir robots.txt dosyasında birden fazla User-agent bloğu bulunabilir. Her blok, kendisinden sonra gelen Disallow ve Allow direktiflerini etkiler. Eğer bir bot için özel bir kural tanımlanmamışsa, genel "*" kuralı geçerli olur. Örneğin, "User-agent: Googlebot" satırından sonra gelen kurallar yalnızca Googlebot için geçerlidir. Aynı dosyada farklı botlar için farklı kurallar tanımlanabilir. User-agent isimleri büyük/küçük harfe duyarlıdır; bu nedenle doğru yazıldığından emin olunmalıdır.

Disallow ve Allow Direktifleri

Disallow, botların belirtilen yollara erişimini engeller. Birden fazla Disallow satırı kullanılabilir. Allow direktifi ise, Disallow ile engellenmiş bir dizin içinde istisna tanımlamak için kullanılır. Örneğin, "Disallow: /images/" tüm resim dizinini engellerken, "Allow: /images/public/" alt dizinine izin verilebilir. Allow direktifi, Disallow'dan daha spesifik olduğu için öncelik kazanır. Bir dizini tamamen engellemek için "Disallow: /dizin/" yazılır; belirli bir dosyayı engellemek için ise dosya adı belirtilir. Örneğin, "Disallow: /gizli.pdf" yalnızca bu dosyayı engeller.

Diğer Direktifler: Sitemap ve Crawl-delay

Sitemap direktifi, site haritasının konumunu belirtir ve arama motorlarının siteyi daha iyi taramasına yardımcı olur. Site haritası, sitedeki sayfaların listesini içeren bir XML dosyasıdır. Sitemap satırı, site haritasının tam URL'sini içermelidir. Crawl-delay direktifi ise botların sunucuya aşırı yüklenmesini önlemek için kullanılır; ancak Google gibi bazı arama motorları bu direktifi dikkate almaz. Ayrıca, bazı botlar "Noindex" gibi meta etiketleri de destekler, ancak bu robots.txt dosyasında yer almaz, HTML sayfasının başlık bölümüne eklenir.

Robots.txt Dosyasının Konumu ve Erişimi

Robots.txt dosyası, sitenin kök dizininde bulunmalıdır ve dosya adı tam olarak "robots.txt" olmalıdır. Alt dizinlerde bulunan robots.txt dosyaları dikkate alınmaz. Örneğin, alan adının kök dizininde yer alan robots.txt dosyasına doğrudan erişilebilmelidir. Dosya, UTF-8 kodlamasında olmalı ve 500 kilobayttan küçük olmalıdır. Arama motorları, siteyi taramaya başlamadan önce bu dosyayı kontrol eder. Eğer dosya yoksa veya erişilemezse, botlar siteyi sınırsız tarayabilir. Dosya adı büyük/küçük harfe duyarlı olabilir; bu nedenle sunucu yapılandırmasına bağlı olarak "Robots.txt" gibi farklı yazımlar çalışmayabilir. Standart olarak küçük harfli "robots.txt" kullanılır. Dosya, HTTP durum kodu 200 ile erişilebilir olmalıdır; 404 gibi bir hata dönerse botlar dosyanın yok sayıldığını varsayar.

Robots.txt Kullanımında Dikkat Edilmesi Gereken Hususlar

Güvenlik Aracı Değildir

Robots.txt, hassas bilgileri korumak için tasarlanmamıştır. Disallow direktifi, yalnızca kurallara uyan botlar için geçerlidir. Kötü niyetli botlar veya saldırganlar bu kuralları kolayca görmezden gelebilir. Bu nedenle, gizli kalması gereken sayfalar için kimlik doğrulama veya şifreleme gibi güvenlik önlemleri alınmalıdır. Robots.txt, yalnızca tarama davranışını yönlendirmek için kullanılır. Örneğin, bir yönetim paneli robots.txt ile engellense bile, doğrudan URL biliniyorsa erişilebilir; bu nedenle erişim kontrolü için sunucu tarafı güvenlik önlemleri şarttır.

İndeksleme Üzerindeki Etkisi

Robots.txt ile bir sayfanın taranması engellense bile, o sayfa arama sonuçlarında görünebilir. Çünkü arama motorları, sayfayı taramasa da başka sitelerden gelen bağlantılarla sayfanın varlığından haberdar olabilir ve indeksleyebilir. Bir sayfanın indekslenmesini tamamen engellemek için "noindex" meta etiketi kullanılmalıdır. Ancak bu etiketin çalışması için botun sayfayı taraması gerekir, bu yüzden robots.txt ile taramayı engellemek ve noindex kullanmak çelişkili olabilir. Doğru yaklaşım, sayfayı taramaya izin verip noindex etiketi eklemektir. Böylece bot sayfayı tarar, noindex etiketini görür ve sayfayı indekslemez. Aksi halde, bot sayfayı taramazsa noindex etiketini göremez ve sayfa başka kaynaklardan indekslenebilir.

Büyük/Küçük Harf Duyarlılığı ve Joker Karakterler

Robots.txt dosyasındaki direktifler büyük/küçük harfe duyarlıdır. Örneğin, "Disallow: /Gizli/" ile "Disallow: /gizli/" farklı sonuçlar doğurur. Joker karakterler (*) ve ($) kullanılabilir. * birden fazla karakteri temsil ederken, $ satır sonunu belirtir. Örneğin, "Disallow: /*.pdf$" tüm PDF dosyalarını engeller. "Disallow: /gecici*" ise /gecici ile başlayan tüm yolları engeller. Bu karakterlerin doğru kullanımı önemlidir; yanlış kullanım istenmeyen sayfaların engellenmesine veya taranmasına yol açabilir.

Robots.txt ve SEO İlişkisi

Robots.txt, SEO stratejisinin bir parçası olarak kullanılabilir. Doğru yapılandırıldığında, arama motoru botlarının siteyi daha verimli taramasını sağlar ve önemli sayfaların indekslenmesine yardımcı olur. Örneğin, yönetim panelleri, geçici dosyalar veya arama sonuçları gibi düşük değerli sayfaların taranmasını engelleyerek sunucu kaynakları korunabilir. Ayrıca, site haritası direktifi ile arama motorlarına site yapısı hakkında bilgi verilebilir. Ancak, yanlış yapılandırılmış bir robots.txt dosyası, önemli sayfaların taranmasını engelleyerek SEO'ya zarar verebilir. Bu nedenle, değişiklikler dikkatle test edilmelidir. Örneğin, yanlışlıkla "Disallow: /" yazmak tüm siteyi taramaya kapatır ve site arama sonuçlarında görünmez hale gelebilir. Bu tür kritik hatalardan kaçınmak için robots.txt dosyası düzenli olarak kontrol edilmelidir.

Robots.txt Dosyasının Test Edilmesi ve Doğrulanması

Robots.txt dosyasının doğru çalıştığından emin olmak için çeşitli yöntemler kullanılabilir. Google Search Console, "robots.txt test aracı" ile dosyanın sözdizimini kontrol edebilir ve belirli URL'lerin taranıp taranmayacağını simüle edebilir. Ayrıca, tarayıcıda robots.txt dosyasını görüntüleyerek içeriği kontrol edilebilir. Değişiklik yapıldıktan sonra, arama motorlarının dosyayı yeniden okuması zaman alabilir. Bu nedenle, kritik değişiklikler öncesinde test yapılması önerilir. Bazı durumlarda, robots.txt dosyasındaki bir hata, sitenin tamamen taranamamasına neden olabilir; bu yüzden düzenli denetim önemlidir.

Yaygın Hatalar ve Yanlış Anlamalar

Robots.txt ile ilgili sık yapılan hatalardan biri, dosyayı yanlış dizine koymaktır. Dosya mutlaka kök dizinde olmalıdır. Bir diğer hata, Disallow direktifini yanlış yazmaktır; örneğin, "Disallow: /" tüm siteyi engeller ve bu genellikle istenmeyen bir durumdur. Ayrıca, robots.txt'nin bir sayfayı arama sonuçlarından kaldıracağı yanılgısı yaygındır; oysa bu mümkün değildir. Robots.txt, yalnızca tarama davranışını etkiler. Son olarak, dosyanın güncel tutulmaması, eski kuralların geçerliliğini korumasına neden olabilir. Site yapısı değiştiğinde robots.txt dosyası da güncellenmelidir.

Robots.txt Dosyasının Etkin Yönetimi

Robots.txt dosyası, web sitesi yönetiminin önemli bir bileşenidir. Doğru kullanıldığında, arama motoru botlarının siteyle etkileşimini düzenler ve sunucu kaynaklarının verimli kullanılmasına katkı sağlar. Site yöneticileri, robots.txt dosyasını düzenli olarak gözden geçirmeli ve site yapısındaki değişikliklere göre güncellemelidir. Ayrıca, arama motorlarının sunduğu araçlarla dosyanın doğruluğu teyit edilmelidir. Unutulmamalıdır ki robots.txt, bir güvenlik önlemi değil, bir yönlendirme aracıdır. Etkin bir robots.txt dosyası, arama motoru optimizasyonu çalışmalarına katkı sağlar ve sitenin arama sonuçlarında doğru şekilde temsil edilmesine yardımcı olur.