← Blog
SEO6 dk okumaMegis

Robots.txt Rehberi: Arama Motoru Taramalarini Yonetme

Robots.txt dosyasini dogru yapilandirarak arama motoru botlarinin sitenizi nasil taradigini kontrol edin.

Robots.txt Dosyası: Yazım Kuralları ve Kapsamlı Rehber

Robots.txt, web sitenizin kök dizininde bulunan ve arama motoru botlarına (crawler) sitenizin hangi bölümlerini tarayıp hangilerini taramayacaklarını söyleyen bir metin dosyasıdır. Doğru yapılandırılmış bir robots.txt dosyası, tarama bütçenizi optimize eder, hassas dizinleri korur ve arama motorlarının sitenizi verimli şekilde keşfetmesini sağlar.

Robots.txt Nasıl Çalışır?

Arama motoru botları bir siteyi taramaya başlamadan önce ilk olarak https://www.site.com/robots.txt adresini kontrol eder. Bu dosyadaki kurallara göre hangi sayfaları tarayacaklarına karar verirler.

Kritik not: Robots.txt bir erişim kontrol mekanizması değildir. Sayfaları gizlemek için kullanılamaz. Robots.txt ile engellenen bir URL, başka sitelerden bağlantı alıyorsa yine de arama sonuçlarında görünebilir. Sayfayı dizinden tamamen çıkarmak için noindex meta etiketi kullanın.

Temel Sözdizimi (Syntax)

Robots.txt dosyası düz metin formatındadır ve belirli direktiflerden oluşur:

User-agent

Kuralların hangi bot için geçerli olduğunu belirtir:

# Tüm botlar için geçerli
User-agent: *

# Sadece Googlebot için geçerli
User-agent: Googlebot

# Sadece Bing botu için geçerli
User-agent: Bingbot

Disallow

Belirtilen yolu taramasını engeller:

User-agent: *
Disallow: /admin/
Disallow: /private/
Disallow: /tmp/
Disallow: /api/
Disallow: /search?

Allow

Disallow ile engellenen bir dizin altındaki belirli sayfaların taranmasına izin verir:

User-agent: *
Disallow: /admin/
Allow: /admin/public-page.html

Sitemap

Sitemap dosyanızın konumunu belirtir:

Sitemap: https://www.site.com/sitemap.xml
Sitemap: https://www.site.com/sitemap-blog.xml

Crawl-delay

Botun ardışık istekler arasında beklemesi gereken süreyi saniye cinsinden belirtir. Google bu direktifi desteklemez, ancak Bing ve Yandex dikkate alır:

User-agent: Bingbot
Crawl-delay: 5

User-agent: Yandex
Crawl-delay: 10

Örnek Robots.txt Şablonları

Standart Web Sitesi

User-agent: *
Disallow: /admin/
Disallow: /api/
Disallow: /private/
Disallow: /tmp/
Disallow: /*?s=
Disallow: /*?ref=

Allow: /api/public/

Sitemap: https://www.site.com/sitemap.xml

E-Ticaret Sitesi

User-agent: *
Disallow: /cart/
Disallow: /checkout/
Disallow: /account/
Disallow: /wishlist/
Disallow: /compare/
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*?page=

Allow: /

Sitemap: https://www.site.com/sitemap-index.xml

AI Botlarını Yönetme

Yapay zeka şirketlerinin botları, sitenizin içeriğini model eğitimi için tarayabilir. Bu botları kontrol etmek istiyorsanız:

# OpenAI botlarını engelle
User-agent: GPTBot
Disallow: /

User-agent: ChatGPT-User
Disallow: /

# Google AI eğitim botunu engelle
User-agent: Google-Extended
Disallow: /

# Anthropic botunu engelle
User-agent: anthropic-ai
Disallow: /

# Common Crawl botunu engelle
User-agent: CCBot
Disallow: /

# Ancak arama motoru taramalarına izin ver
User-agent: Googlebot
Allow: /

User-agent: Bingbot
Allow: /
Bot AdıŞirketAmaç
GPTBotOpenAIModel eğitimi ve web tarama
ChatGPT-UserOpenAIChatGPT web browsing özelliği
Google-ExtendedGoogleGemini AI model eğitimi
anthropic-aiAnthropicClaude model eğitimi
CCBotCommon CrawlAçık veri seti oluşturma
BytespiderByteDanceTikTok/AI model eğitimi

Joker Karakter (Wildcard) Kullanımı

Robots.txt'te * ve $ joker karakterleri kullanarak daha esnek kurallar oluşturabilirsiniz:

  • * — Herhangi bir karakter dizisini eşleştirir
  • $ — URL'nin sonunu belirtir
# Tüm .pdf dosyalarını engelle
User-agent: *
Disallow: /*.pdf$

# Tüm parametre içeren URL'leri engelle
Disallow: /*?

# Belirli parametreyi engelle
Disallow: /*?sessionid=

# Belirli dizin altındaki görselleri engelle
Disallow: /images/*.jpg$

Yaygın Hatalar ve Çözümleri

  1. Tüm siteyi engelleme: Disallow: / kullanmak sitenin tamamının taranmasını engeller. Test ortamında doğru, canlı sitede felaket.
  2. CSS ve JS dosyalarını engelleme: Google, sayfalarınızı render etmek için CSS ve JavaScript dosyalarına erişmek ister. Bunları engellemeyin.
  3. Büyük/küçük harf duyarlılığı: URL yolları büyük/küçük harfe duyarlıdır. /Admin/ ile /admin/ farklı kurallardır.
  4. Dosyanın yanlış konumda olması: Robots.txt mutlaka alan adının kök dizininde olmalıdır: site.com/robots.txt.
  5. Alt alan adlarını unutmak: www.site.com/robots.txt ile blog.site.com/robots.txt farklı dosyalardır. Her alt alan adının kendi robots.txt'i olmalıdır.
  6. robots.txt ile gizlilik sağlamaya çalışmak: Robots.txt herkese açıktır. Hassas bilgileri korumak için sunucu tarafında kimlik doğrulama kullanın.

Robots.txt Test Araçları

  • Google Search Console: robots.txt tester aracıyla kurallarınızı belirli URL'ler için test edin.
  • Bing Webmaster Tools: Robots.txt analizörü ile kurallarınızı doğrulayın.
  • Screaming Frog: Sitenizi tarayarak robots.txt ile engellenen sayfaları raporlayın.
  • Technicalseo.com: Ücretsiz robots.txt test aracını kullanın.

Next.js'te Robots.txt Oluşturma

// app/robots.ts
import { MetadataRoute } from 'next';

export default function robots(): MetadataRoute.Robots {
  return {
    rules: [
      {
        userAgent: '*',
        allow: '/',
        disallow: ['/admin/', '/api/', '/private/'],
      },
      {
        userAgent: 'GPTBot',
        disallow: '/',
      },
    ],
    sitemap: 'https://www.site.com/sitemap.xml',
  };
}

Sonuç

Robots.txt dosyası, basit görünümüne rağmen sitenizin arama motoru taramasını doğrudan etkileyen kritik bir dosyadır. Doğru yapılandırma tarama bütçenizi korur, hassas dizinleri gizler ve AI botları üzerinde kontrol sağlar. Her site lansmanında robots.txt dosyanızı gözden geçirin, test araçlarıyla doğrulayın ve özellikle canlıya almadan önce Disallow: / gibi kritik kuralları kaldırdığınızdan emin olun. Küçük bir hata tüm sitenizin arama sonuçlarından kaybolmasına neden olabilir.

#robots.txt#tarama yonetimi#bot kontrolu#indeksleme