Robots.txt ve sitemap.xml: Hosting’de SEO için en iyi yerleşim
Robots.txt ve sitemap.xml dosyalarını nerede, nasıl konumlandıracağınızı ve hosting ayarlarında nelere dikkat edeceğinizi net şekilde öğrenin.
SEO’da teknik doğruluk kadar “dosyaların doğru yerde ve doğru biçimde” bulunması da belirleyicidir. Robots.txt ve sitemap.xml, arama motorlarının sitenizi keşfetme (crawl) ve indeksleme (index) davranışını doğrudan etkiler. Yanlış yerleşim, gereksiz engellemeler ve hatalı URL’ler indeks kaybına yol açar. Bu rehberde, hosting üzerinde en iyi yerleşimi; konum, format, öncelik ve kontrol adımlarıyla birlikte netleştiriyoruz.
Robots.txt: Doğru konum, doğru kurallar
Robots.txt dosyası arama motorlarına “hangi URL’leri tarayabilirim/taramamalıyım” mesajını verir. Bu dosyanın en kritik özelliği erişilebilir olmasıdır.
Doğru dosya konumu
- Robots.txt mutlak olarak site kökünde (web kökü) olmalıdır:
/robots.txt - Örnek:
https://ornek.com/robots.txt - Hosting tarafında amaç, bu URL’nin her zaman servis edilmesidir. En sık yapılan hatalar:
- Dosyayı yanlış dizine koymak (ör.
/public_html/robots/robots.txt) - CDN/Reverse proxy kurulumunda
/robots.txt’in farklı bir kaynaktan servis edilmesi - Statik dosya yerine dinamik yönlendirme/404 üretmek
En iyi yerleşim için pratik öneriler
1) Robots.txt’i statik dosya olarak sunun - Hosting kontrol paneli (Plesk/cPanel/DirectAdmin) üzerinden “document root” altında tutmak en az sürpriz çıkaran yaklaşımdır.
2) Gereksiz “Disallow: /” yazmayın - Tüm siteyi kapatmak yerine yalnızca gerçekten taranmasını istemediğiniz alanları engelleyin.
3) Yönetim/altyapı alanlarını net hedefleyin
- Örnek akıl yürütme: yönetim paneli URL’leri (/admin/, /wp-admin/), arama sonuçları (/?s=) veya teknik sayfalar hedeflenebilir.
Robots.txt örnekleri (net ve güvenli)
Aşağıdaki örnek, “her şeyi engelleme” yaklaşımı yerine tipik bir düzeni gösterir:
- WordPress için sık senaryo (genelleştirilmiş):
- Yönetici alanları ve arama sonuçları engellenebilir
- İçerik sayfaları taranabilir kalmalıdır.
Örnek şablon (kendi alan adınıza uyarlayın):
User-agent: *
Disallow: /wp-admin/
Disallow: /wp-login.php
Disallow: /?s=
Sitemap: https://ornek.com/sitemap.xml
Not: “Sitemap” satırı robots.txt içinde bulunabilir. Ancak sitemap.xml’inin kendisi de doğru konumda ve doğru XML formatında olmalıdır.
Sitemap.xml: Doğru konum, doğru URL listesi
Sitemap.xml, arama motorlarına “hangi sayfaları keşfetmek/indekslemek istiyorum” listesini verir. Robots.txt’ten farklı olarak sitemap, doğrudan indeks hedeflerini destekler. Ancak sitemap’in amacı URL’leri önermek; arama motoru kararını tek başına belirlemek değildir.
Doğru dosya konumu
- Sitemap de pratikte site kökünde tutulmalıdır:
/sitemap.xml - Örnek:
https://ornek.com/sitemap.xml - Hosting üzerinde “document root” altında bulunan statik dosya, çoğu altyapıda en sorunsuz sonuç verir.
XML içeriğinde en çok yapılan hatalar
- Sitemap içinde 404 dönen URL’ler
- Kanonik olmayan (canonical) sayfalar
- Yönlendirme (301/302) ile giden URL’ler
- Fazla sayıda gereksiz URL (ör. parameter’lı tekrarlar)
- Tarihler (lastmod) ile gerçek güncellemeler arasında uyumsuzluk
Hosting üzerinde en iyi yerleşim stratejisi
1) Tek sitemap ile başlayın
- Küçük ve orta ölçekli sitelerde tek
sitemap.xmlçoğu zaman yeterlidir. - Çok sayıda URL olduğunda sitemap index (ör.
sitemap_index.xml) yapısına geçilir.
2) Sitemap üretimini tutarlı kurun
- WordPress gibi CMS’lerde eklentiler sitemap üretir. Hosting’de eklenti ile üretilen dosyanın:
- doğru path’te çıktığını
- doğru domain altında servis edildiğini
- cache katmanında eski kalmadığını doğrulayın.
3) CDN/Cache kullanıyorsanız doğrulayın
- Robots.txt genellikle cache’e alınmamalıdır; güncelleme yaptığınızda hızlı yansımayı beklemek mantıklıdır.
- Sitemap de dinamik üretiliyorsa (ör. her istek anında değil) “yeni içerik” ile “sitemap güncellemesi” aynı ritimde olmalıdır.
Robots.txt ve sitemap.xml ilişkisinde öncelik
Robots.txt “erişilebilir mi?” ve “tarama kuralları nasıl?” sorularını yanıtlar; sitemap.xml ise “hangi URL’ler öneriliyor?” tarafını listeler. İkisini birlikte kullanmak en sağlıklı yaklaşım olarak kabul edilir.
İdeal kombinasyon
- Robots.txt içinde sitemap referansı olsun
- Sitemap.xml dosyası site kökünde
/sitemap.xmlolarak erişilsin
Bu şekilde arama motoru hem keşif kurallarını hem de önerilen URL listesini aynı yerden görür.
Hosting üzerinde yerleşimi doğrulama kontrol listesi
Aşağıdaki adımlar, “dosya doğru yerde mi?” sorusunu teknik olarak cevaplar.
1) Robots.txt erişilebilir mi?
- Tarayıcıdan veya curl ile test:
https://ornek.com/robots.txt- Beklenen:
- 200 (ok) dönmeli
- İçerikte doğru “User-agent” blokları olmalı
- (Varsa)
Sitemap:satırı doğru URL’yi göstermeli
2) Sitemap XML doğruluk testleri
https://ornek.com/sitemap.xml- 200 dönmeli
- XML formatı hatasız olmalı
- İçindeki URL’ler gerçekten erişilebilir olmalı
3) Canonical ve yönlendirme kontrolü
- Sitemap’teki URL ile sayfadaki canonical etiket (canonical tag) uyumlu olmalıdır.
- Sürekli 301/302 zinciri olan URL’ler, arama motoru açısından gereksiz karmaşa yaratır.
4) Cache ve CDN etkisi
- Robots.txt genelde değişince hızlı yansıtılmalıdır.
- Sitemap güncellendikten sonra arama motoru yeni listeyi görene kadar gecikme olabilir; bu gecikme cache TTL ile artabilir.
WordPress / CMS özelinde en iyi yerleşim
Birçok site için sitemap ve robots yönetimi eklentiler üzerinden yapılır. Bu durumda “hosting’de dosya yeri” ile “eklentinin ürettiği içerik” arasındaki uyumu kontrol etmek gerekir.
WordPress’te pratik kurulum düzeni
- Robots.txt: tema/eklentiden üretiliyorsa bile dosyanın sonuçta
/robots.txtolarak servis edildiğini doğrulayın. - Sitemap: eklenti sitemap üretir; sonuçta
/sitemap.xmlveya eklentinin verdiği path erişilebilir olmalı.
Çok sık görülen uyumsuzluk
- WordPress eklentisi sitemap’i farklı path’te üretir (ör.
/sitemap_index.xml) ancak robots.txt içinde/sitemap.xmlreferansı kalır. - Sonuç: arama motoru sitemap’i bulsa bile içerik/URL listesi bekleneni karşılamayabilir.
Sık hata örnekleri ve net düzeltmeler
Aşağıdaki maddeler, “hosting’de en iyi yerleşim” hedefiyle birebir ilişkilidir.
Hata: Robots.txt 404 dönüyor
Düzeltme: Dosyayı web kökü document root altına alın. Kurulumdan sonra kontrol paneli dosya yöneticisinde path’i kontrol edin.
Hata: Sitemap.xml farklı alt dizinden servis ediliyor
Örnek: https://ornek.com/seo/sitemap.xml
Düzeltme: Standartlaştırın. En düşük sürprizle arama motoru için /sitemap.xml hedefleyin. Eğer alt dizin zorunluysa robots.txt içinde aynı URL’yi referanslayın ve erişilebilirliği doğrulayın.
Hata: Sitemap içeriği eski (cache)
Düzeltme: CDN/cache katmanında sitemap dosyasının gecikmesini azaltın veya eklenti ayarlarından yeniden üretmeyi planlayın. Üretim/servis zamanlaması kontrol edilmelidir.
Hata: Sitemap URL’leri noindex olan sayfaları listeliyor
Düzeltme: İndekslenmesini istemediğiniz sayfaları sitemap’e koymayın. Bunun tersi de doğrudur: indexlenmesi gereken sayfalar listede yer almalı ve sayfanın kendisi index izni vermelidir.
En iyi yerleşimi özetleyen tablo
Aşağıdaki tablo kararınızı hızlılaştırmak içindir.
| Öğenin doğru davranışı | En iyi yerleşim | Doğrulama testi |
|---|---|---|
| Robots.txt erişilebilirlik | https://alanadiniz.com/robots.txt (web kökü) |
Tarayıcı/curl ile 200 dönüyor mu? |
| Robots.txt içinde sitemap bildirimi | Sitemap: https://alanadiniz.com/sitemap.xml |
Referans URL gerçekten açılıyor mu? |
| Sitemap dosyası | https://alanadiniz.com/sitemap.xml |
200 dönüyor mu ve XML hatasız mı? |
| Sitemap içindeki URL kalitesi | 200 dönen, canonical uyumlu, gereksiz tekrar yok | URL’ler tek tek erişilebilir mi? |
| Güncellemelerin yansıması | Cache/CDN gecikmesi düşük | Güncel içerik sonrası sitemap güncel mi? |
Doğru hosting ayarları: Hangi seçenekler fark yaratır?
Hosting satın alırken “SEO için hız” gibi soyut vaatler yerine şu teknik noktalar pratikte etki eder:
- Statik dosyaları (robots.txt, sitemap.xml) gecikmesiz ve stabil servis etmek
- Cache/CDN yapılandırmasında bu dosyalara özel kural koyabilmek
- Sunucuda dosya izinleri (permissions) ve MIME türlerinin doğru olması
- 301/302 yönlendirme katmanlarında robots/sitemap’in atlanmaması
Örneğin bir reverse proxy kurulumunda, tüm istekler uygulama katmanına yönleniyorsa /robots.txt ve /sitemap.xml için özel route ayarı yapmak gerekebilir. Aksi halde uygulama yanlışlıkla 404/500 dönebilir.
Sonuç: Hemen uygulayabileceğiniz aksiyon planı
İlk adım olarak, robots.txt ve sitemap.xml dosyalarını mutlak olarak web kökünde (/robots.txt ve /sitemap.xml) erişilebilir hale getirin. Ardından robots.txt içindeki sitemap referansını ve sitemap içindeki URL’lerin gerçekten 200 dönüp canonical uyumlu olduğunu doğrulayın. Cache/CDN kullanıyorsanız bu dosyaların güncellemelerde gecikmediğini kontrol edin. Bu kontrolleri bugün tamamlayın; bir sonraki adım olarak arama motoru tarafında raporlanan crawl/index verilerini inceleyin ve gerektiğinde robots/sitemap kapsamını düzenleyin.
Hosting karşılaştırması yapmaya hazır mısın?
100+ firmanın fiyatlarını tek tıkla karşılaştır, en uygun paketi bul.
Hosting Karşılaştır →İlgili Yazılar
ModSecurity nedir, paylaşımlı hostingde aktif mi?
ModSecurity (WAF) nasıl çalışır, hangi saldırıları engeller ve paylaşımlı hostingde aktif edilip edilmediğini nasıl kontrol edeceğinizi öğrenin.
WordPress’te Redis/Memcached object cache mantıklı mı?
WordPress’te object cache (Redis/Memcached) ne kazandırır? Uyumsuzluk, ayar hataları ve ne zaman şart olduğu için net kontrol listesi.
Yavaş Database Sorguları Nasıl Bulunur? Net Optimizasyon Rehberi
Yavaş sorguları bulmak için MySQL/PostgreSQL’de doğru log ve metrikleri toplayın, problemli SQL’i tespit edip ölçülebilir şekilde optimize edin.
Snapshot yedekleme gerçek backup yerine geçer mi?
Snapshot (anlık görüntü) hızlı geri dönüş sağlar. Ancak gerçek backup değildir. Doğru strateji, süre/erişim ve test kriterlerini birlikte ele alır.