Kısa cevap: robots.txt, uyumlu arama motoru botlarının hangi adresleri tarayabileceğini yönetir. noindex ise erişilebilen bir sayfanın arama dizininde yer almaması için kullanılan yönergedir. Aynı sorunu çözmezler. Özellikle bir URL’yi robots.txt ile kapatıp aynı sayfaya noindex eklemek, botun noindex’i görmesini engelleyebilir. Bu ayrımı bilmek, önemli bir rehberi yanlışlıkla gizlememek için gereklidir.
1. Tarama, dizine ekleme ve sıralama aynı şey mi?
Arama motorunun URL’yi keşfetmesi, içerik için istek göndermesi, sayfayı işlemesi ve uygun bulursa arama dizinine alması farklı aşamalardır. Keşfedilmek henüz taranmış olmak değildir. Bir sayfanın taranması da dizine alınacağı veya belirli aramada üst sıralarda çıkacağı anlamına gelmez. Bu yüzden Search Console’da rapor gördüğünüzde hangi aşamanın incelendiğini önce netleştirin.
| Aşama | Temel soru | Örnek kontrol |
|---|---|---|
| Keşif | URL’ye bir yol var mı? | Dahili bağlantılar ve sitemap |
| Tarama | Bot sayfayı isteyebiliyor mu? | robots.txt ve sunucu yanıtı |
| Dizin | İçerik arama dizinine uygun mu? | noindex, canonical, içerik durumu |
| Görünürlük | Hangi sorgularda gösteriliyor? | Search Console Performans |
2. Robots.txt dosyası neyi kontrol eder?
robots.txt düz metin biçiminde, sitenin ilgili kök adresinde sunulur; örneğin https://example.com/robots.txt. User-agent kuralların hedeflediği botu, Disallow ise taranması istenmeyen yol önekini belirtir. Kurallar bir erişim güvenliği sistemi değildir. Dosya herkes tarafından okunabilir ve uyumsuz botlar bu kuralları yok sayabilir.
Yalnızca eğitim amaçlı şu örnekte, belirtilen klasörün taranması istenmiyor:
User-agent: *
Disallow: /ornek-gizli-olmayan-klasor/
Sitemap: https://example.com/sitemap_index.xml
Bu örnek gerçek sitenize doğrudan kopyalanmamalıdır. Bir klasörü engellemeden önce orada önemli yazılar, CSS/JS dosyaları, görseller veya arama motorlarının sayfayı anlaması için gereken kaynaklar olup olmadığını inceleyin. robots.txt ile özel dosyaları saklamaya çalışmak yerine gerçek kimlik doğrulama ve sunucu erişim denetimi kullanın.
3. Noindex kuralı nasıl çalışır?
noindex sayfanın HTML kaynağındaki robots meta etiketiyle veya HTTP yanıt başlığıyla belirtilebilir. Arama motorunun kuralı uygulayabilmesi için kaynağı tarayıp yönergeyi okuyabilmesi gerekir. Örneğin aşağıdaki HTML satırı bir sayfanın Google gibi bu yönergeyi destekleyen arama motorları tarafından dizine alınmamasını ister:
<meta name="robots" content="noindex, follow">
follow kullanılması, her bağlantının mutlaka izleneceği yönünde bir garanti değildir. Asıl kritik nokta noindex yönergesinin görünür olmasıdır. Yalnızca arama sonucunda görünmemesi istenen ancak bot erişimi açık tutulan sayfalarda değerlendirin; herkesten gizli bilgi için yeterli bir koruma değildir.
4. Robots.txt ile noindex’i neden birleştirmemelisiniz?
Bir sayfa Disallow ile botlara kapalıysa bot içeriğini okuyamayabilir. Dolayısıyla sayfanın içine eklediğiniz noindex etiketini de göremeyebilir. Google, bir URL’yi başka bağlantılardan biliyorsa tarayamasa bile sınırlı bilgilerle URL’yi sonuçlarda gösterebilir. ‘Hem kapatayım hem noindex koyayım, daha güvenli olsun’ mantığı bu nedenle yanlıştır.
| Hedef | Öncelikli yaklaşım | Dikkat |
|---|---|---|
| Tarama trafiğini yönetmek | Uygun robots.txt kuralı | İndeks dışı kalma garantisi değildir |
| Erişilebilir sayfayı dizinden çıkarmak | Tarama açıkken noindex | Yönerge bot tarafından görülmeli |
| Özel dosyayı yalnız yetkiliye açmak | Kimlik doğrulama / erişim kontrolü | Robots.txt ve noindex gizlilik sağlamaz |
| Taşınmış URL’yi yeni adrese aktarmak | Uygunsa 301 yönlendirme | Gerçekten eşdeğer hedef seçilmeli |
5. Canonical, 404 ve 301 bu karara nasıl dahil olur?
Benzer iki URL’den hangisinin tercih edildiğini göstermek için canonical URL rehberindeki ilkeleri kullanın. Bir URL kalıcı olarak yeni eşdeğer adrese taşındıysa 301 değerlendirilir. Kaynak gerçekten kaldırıldı ve karşılığı yoksa gerçek 404/410 yanıtı uygun olabilir. Bunlar birbirinin otomatik ikamesi değildir. Sırf ‘indeksleme hatası’ görünmesin diye her adresi noindex’e çevirmek, kullanıcının aradığı içeriği saklayabilir.
Örneğin iki ürün sayfasının kopya parametreleri için canonical kararı gerekirken, site içi arama sonuçları için arama dizininden çıkarma politikası düşünülebilir. Her kararı URL’nin amacı, kullanıcıya sunduğu içerik ve kalıcı olup olmadığı belirler.
6. WordPress’te kuralı nerede kontrol edersiniz?
WordPress’teki Ayarlar → Okuma alanında arama motorlarını caydırmaya ilişkin bir seçenek bulunabilir. Bu ayar bütün siteyi ilgilendirdiği için canlı projede rastgele işaretlenmemelidir. Rank Math gibi SEO eklentilerinde tekil yazı veya kategori için robots ayarları bulunabilir; bunları hangi eklentinin çıktı ürettiğini bilerek kontrol edin. Birden fazla eklenti ve tema aynı etiketi üretiyorsa çelişen kurallar oluşabilir.
- Önemli bir rehberi gizli pencerede açıp HTTP 200 döndüğünü doğrulayın.
- Sayfa kaynağında
robotsmeta etiketini inceleyin. - Kök
/robots.txtdosyasının ilgili URL’yi engelleyip engellemediğine bakın. - WordPress ve SEO eklentisinin sayfa düzeyi ayarlarını karşılaştırın.
- Çelişki varsa önce yedek ve değişiklik kaydı oluşturup yalnız gerekli ayarı düzeltin.
7. Search Console’da sorunu nasıl ayırırsınız?
Search Console başlangıç rehberindeki URL Denetimi, Google’ın bildiği URL durumu ile canlı test sonucunu ayrı gösterir. ‘robots.txt tarafından engellendi’ ile ‘noindex etiketiyle hariç tutuldu’ farklı nedenlerdir. Son değişiklik henüz taranmamışsa raporda eski durum görünmesi mümkündür. Kontrolü gerçek sunucu yanıtı, kaynak kod ve tarama tarihiyle birlikte yapın.
Bir sayfa hâlâ indekslenmiyorsa robots ve noindex temiz olması tek başına yeterli değildir. İçerik kalitesi, kopya URL’ler, bağlantı keşfi ve Google’ın dizin seçimi ayrıca değerlendirilir. Tekrar tekrar manuel indeksleme talebi göndermek bunun yerine geçmez.
8. Hataları önleyen karar kontrol listesi
- Bu URL gerçekten arama sonuçlarında görünmeli mi?
- Sayfanın taranmasıyla indekslenmesi arasındaki farkı ayırdık mı?
- Robots.txt kuralı önemli içerik veya dosyaları yanlışlıkla engelliyor mu?
- Noindex kullanılıyorsa bot etiket veya HTTP başlığını görebiliyor mu?
- Yönlendirme, canonical veya 404 sorunu yanlışlıkla noindex ile örtülüyor mu?
- Yapılan değişiklik için tarih, URL ve önceki yanıt kaydedildi mi?
Sık sorulan sorular
Robots.txt içine noindex yazabilir miyim?
Google, robots.txt içindeki noindex yönergesini desteklemez. Dizine eklemeyi engellemek için uygun meta etiketini veya HTTP başlığını kullanın.
Robots.txt ile engellediğim sayfa Google’da görünebilir mi?
Evet. Google URL’yi başka bağlantılardan öğrenirse içeriğini tarayamasa da URL’yi sonuçlarda gösterebilir.
Noindex verdiğim sayfayı tamamen gizlemiş olur muyum?
Hayır. Noindex bir arama dizini yönergesidir; URL’ye erişimi veya gizli verilerin görüntülenmesini engellemez.