Robots.txt Dosyasında Sık Yapılan Hatalar
Robots.txt dosyası, arama motorlarına hangi sayfaları taramaları gerektiğini söyleyen önemli bir kontrol mekanizmasıdır. Ancak yanlış yapılandırıldığında, SEO performansını olumsuz etkileyebilir. Özellikle e-ticaret ve içerik odaklı sitelerde yapılan küçük hatalar, organik görünürlüğü ciddi şekilde olumsuz etkileyebilir ve kritik taranabilirlik sorunlarına yol açabilir. Bu yazıda robots.txt dosyasında en sık karşılaşılan hatalardan bahsedeceğim.
Öncelikle robots.txt’nin ne olduğu hakkında kısa bir açıklama yapalım.
Robots.txt Nedir?
Robots.txt dosyası, bir web sitesinin kök dizininde yer alan ve arama motoru botlarına hangi sayfaların taranıp hangilerinin taranmaması gerektiğini bildiren basit bir metin dosyasıdır. Bu dosya sayesinde site sahipleri, belirli dizinleri veya sayfaları arama motorlarından gizleyebilir, böylece hem tarama bütçesini daha verimli kullanabilir hem de gereksiz içeriklerin dizine eklenmesini engelleyebilir.
Detaylar için ekibimizden Samet Özsüleyman’ın robots.txt hakkında yazdığı detaylı içeriği inceleyebilirsiniz.
Robots.txt Dosyasında Sık Yapılan Hatalar
1 - 404 veya Erişilemeyen Robots.txt Dosyaları
En yaygın hatalardan biri robots.txt dosyasının hiç var olmaması ya da sunucuda erişilemez durumda olmasıdır. Arama motoru botları bir siteyi taramaya başlamadan önce ilk olarak robots.txt dosyasını kontrol eder. Robots.txt dosyasının 4xx kodu çevirmesi durumunda googlebot robots.txt dosyası yokmuş gibi davranır. Yani herhangi bir tarama kısıtlaması yapılmadığını varsayar.
Googlebot’un robots.txt dosyasında 5xx yani sunucu hatası ile karşılaşması durumunda ise aşağıdaki adımlar uygulanır:
- 12 saat boyunca siteyi taramaz ancak robots.txt’yi getirmeye çalışmaya devam eder.
- Yeni bir sürüm getiremediği durumda en son çalışan sürümü kullanır.
- Önbelleğe alınmış bir sürüm yoksa tarama kısıtlaması olmadığını varsayar.
- Sunucu hatası 30 günde düzeltilmediği takdirde Googlebot robots.txt dosyası yokmuş gibi davranır. Detaylı bilgiyi google kaynaklarında bulabilirsiniz.
Tarama bütçesini verimli şekilde yönetebilmek adına 200 durum kodlu çalışır bir robots.txt dosyası oluşturmanız önerilir.
2 - Slash (/) Kullanımı
Robots.txt dosyasında yapılan bir diğer yaygın hata, “/” karakterinin yanlış veya eksik kullanımıdır. Arama motoru botları, dizinleri ve dosyaları yorumlarken bu karaktere dikkat eder. Yanlış kullanımı, beklenmeyen sayfaların engellenmesine ya da istenmeden taramaya açık hale gelmesine neden olabilir.
Örneğin, aşağıdaki komut, tüm sayfaların taramaya kapatıldığı anlamına gelir.
User-agent: *
Disallow: /
Aşağıdaki komut ise hiçbir sayfanın taramaya kapatılmadığı anlamına gelir. Dolayısıyla iki dosya birbirinden tamamen farklıdır.
User-agent: *
Disallow:
URL dizinleri üzerinden örnek vermek gerekirse, aşağıdaki komut /blog sayfasını taramaya kapatır. Ancak /blog/robots-dosyasi-nedir gibi alt sayfalar taranmaya devam eder.
User-agent: *
Disallow: /blog
Sonuna bir slash eklediğimizde ise /blog/ dizini tamamen taramaya kapatılacaktır.
User-agent: *
Disallow: /blog/
Dolayısıyla robots.txt dosyası oluştururken hangi sayfaları taramaya kapattığınız konusunda dikkatli davranmanız gerekir. Kontrol için Technical Seo’nun robots.txt test aracını kullanabilirsiniz.
Okumaktan yoruldunuz mu?
Bu blog yazısının, Google NotebookLM ile oluşturulmuş sesli özetini Spotify'dan da dinleyebilirsiniz.
3 - Allow vs. Disallow Komutları
Robots.txt dosyasında Allow ve Disallow komutlarının birlikte kullanılması, çoğu zaman kafa karışıklığına neden olabilir. Özellikle belirli bir klasörü taramaya kapatırken içindeki bazı sayfalara izin vermek istenirse bu iki komut birlikte kullanılır. Ancak bu durumda kuralların birbiriyle çelişmemesi ve arama motorlarının nasıl yorumlayacağını anlamak çok önemlidir.
Örneğin, aşağıdaki robots.txt dosyası /urunler/ dizinini taramaya kapatırken /urunler/kadin dizinini taramaya açık bırakır.
User-agent: *
Disallow: /urunler/
Allow: /urunler/kadin/
Google gibi gelişmiş arama motoru botları allow komutunu tanır ancak daha az gelişmiş arama motorları farklı şekilde yorumlayabilir. Dolayısıyla karmaşık kural yapılarını gerekmedikçe kullanmamanız önerilir.
4 - Dosya Okuma Sırasının Yanlış Yorumlanması
Robots.txt dosyasında sık yapılan hatalardan biri, kuralların yukarıdan aşağıya sırayla okunduğu yanılgısıdır. Oysa Googlebot gibi modern tarayıcılar, kuralları özgüllük derecesine göre değerlendirir; yani daha spesifik olan kurallar, genel olanlara göre önceliklidir. Tarayıcılar, robots.txt kurallarıyla URL’leri eşleştirirken kural yolunun uzunluğuna bakar ve en ayrıntılı olanı kullanır. Çakışan kurallar söz konusu olduğunda ise, joker karakter içerenler de dahil olmak üzere, en az kısıtlayıcı olan kural geçerli olur.
Örneğin, aşağıdaki robots.txt komutları çakıştığı için Google Allow komutunu kullanacaktır.
Allow: /page
Disallow: /page
Örneğin, bir web sitesinde /blog altındaki URL’leri taramaya kapatmak istiyoruz ancak /blog/post1.html içeriğinin taranabilir olmasını istiyoruz. Bu durumda allow ve disallow komutları aşağıdaki gibi kullanılabilir.
Disallow: /blog
Allow: /blog/post1.html
Kuralların öncelik sırası hakkında detaylı bilgi için Google robots.txt spesifikasyonunu nasıl yorumluyor? içeriğine göz atabilirsiniz.
5 - Robots.txt Dosyasının Kök Dizinde Yer Almaması
Robots.txt dosyasının mutlaka sitenizin kök dizininde bulunması gerekir. Alt dizinlerde veya farklı bir yol altında yer alan bir robots.txt, arama motorları tarafından geçersiz sayılır. Bu da hiçbir kısıtlama uygulanmadığı anlamına gelir.
Örneğin, https://www.example.com domain’i için oluşturulan robots.txt dosyası aşağıdaki gibi gözükmelidir.
https://www.example.com/robots.txt
Aşağıdaki gibi kök dizinde bulunmayan robots.txt dosyalarının ise geçerliliği yoktur.
https://www.example.com/config/robots.txt
https://www.example.com/path/robots.txt
6 - Robots.txt Dosyasına Site Haritası Eklenmemesi
Google kaynakları sitemap satırını isteğe bağlı olarak açıklamış. Dolayısıyla site haritasını robots.txt dosyasına eklememek tam anlamıyla bir hata değil ancak site haritasının daha hızlı ve muhtemelen daha sık taranmasını isterseniz site haritasını robots.txt dosyasına mutlaka eklemenizi öneririm.
Robots.txt dosyasına site haritası eklerken site haritasının tam URL içerdiğinden emin olmanız gerekir. Aksi halde site haritanız taranmayacaktır. Site haritası eklenen bir robots.txt dosyası aşağıdaki gibi gözükür.
7 - Robots.txt Kapsamındaki URL’lerin Noindex İşaretlenmesi
Sık karşılaşılan hatalardan biri, robots.txt dosyası ile taramaya kapatılan bir URL’nin aynı zamanda noindex işaretlenmesidir. Eğer bir sayfa robots.txt ile taramaya kapatıldıysa, arama motoru botları bu sayfanın içeriğini göremez ve dolayısıyla noindex etiketi olup olmadığını da tespit edemez. Arama motoru bu sayfayı dizinden çıkarmak yerine önbelleğinde tutmaya devam edecektir. Bu yüzden robots.txt üzerinden taramaya kapattığınız sayfalarda durum kodu, indekslenebilirlik gibi aksiyonlar alırken dikkat etmeniz gerekir.
Örneğin, robots.txt üzerinden engellediğiniz /tag/ path’ini indeksten tamamen kaldırmak için robots.txt’deki /tag/ satırını kaldırmalı, ardından /tag/ sayfalarını noindex işaretlemelisiniz. Sayfalar indeksten kalktıktan sonra robots.txt dosyasına yeniden /tag/ path’ini ekleyerek sayfaların taranmasını engelleyebilirsiniz.
8 - Geliştirme Ortamları ve Test Sitesinin Taramaya Açık Olması
Staging veya test ortamlarının dizine eklenmesi duplike içerik sorununa sebep olabilir. Bu yüzden geliştirme ortamları ve test sitelerinin robots.txt ile taramaya kapatılması önerilir. Test sitenizi aşağıdaki komutlar ile taramaya kapatabilirsiniz.
User-agent: *
Disallow: /
Bu komut yalnızca botlara yönelik yönlendirmeler içerir. Bu tür sayfalar kapsamlı şekilde korumak için ek olarak HTTP basic auth ya da IP engelleme gibi yöntemler tercih edilebilir.
Robots.txt dosyası, basit yapısına rağmen SEO açısından büyük etkiye sahiptir. Küçük gibi görünen yapılandırma hataları, sitenin taranabilirliğini ve dolayısıyla organik görünürlüğünü ciddi şekilde etkileyebilir. Bu yüzden web siteniz için robots.txt dosyası oluştururken dikkatli olmalı, düzenli olarak kontrol etmeli ve ihtiyaç halinde teknik SEO araçları ya da uzmanlardan destek almalısınız.