Makale Başlıkları
- Robots.txt Nedir?
- Robots.txt Dosyası Ne İşe Yarar?
- Robots.txt Dosyası Nasıl Oluşturulur?
- Robots.txt Komutları ve Direktifleri
- Robots.txt Kodları ve Örnekleri
- Sayfayı Aramadan Çıkarmak: Noindex Meta Etiketi
- Yapay Zeka Botlarını robots.txt ile Yönetmek (2025)
- Sık Yapılan Robots.txt Hataları
- WordPress’te Robots.txt
- Sıkça Sorulan Sorular
Kısaca
Robots.txt, sitenizin kök dizininde (alanadiniz.com/robots.txt) yer alan düz bir metin dosyasıdır ve arama motoru botlarına sitenin hangi bölümlerini tarayabileceklerini söyler. Bir metin editörüyle oluşturulur, User-agent, Disallow, Allow ve Sitemap satırlarından oluşur ve UTF-8 olarak kaydedilip kök dizine yüklenir.
- Dosya mutlaka kök dizinde olmalı: https://alanadiniz.com/robots.txt (alt klasörde çalışmaz).
- Sayfayı Google sonuçlarından gerçekten çıkarmak için Disallow değil, noindex meta etiketi kullanın.
- 2025 itibarıyla Google crawl-delay ve noindex satırlarını robots.txt içinde desteklemiyor; GPTBot ve Google-Extended gibi AI botlarını ayrı yönetebilirsiniz.
Bir web sitesinin arama sonuçlarında görünmesi onlarca kritere bağlıdır, ancak süreç her zaman aynı yerden başlar: arama motoru botu siteye geldiğinde ilk olarak robots.txt dosyasını okur. Bu küçük metin dosyası, botun sitenizde nereye girip nereye giremeyeceğini belirleyen ilk kapıdır. Yanlış bir satır, tüm sitenizin aramaya kapanmasına; doğru bir yapılandırma ise tarama bütçenizin verimli kullanılmasına yol açabilir. Bu rehberde robots.txt dosyasının ne olduğunu, nasıl oluşturulduğunu, hangi komutların gerçekten çalıştığını (ve hangilerinin artık çalışmadığını) somut örneklerle ve güncel bilgilerle anlatıyoruz.
Robots.txt Nedir?
Robots.txt, sitenizin kök dizininde bulunan ve Robots Exclusion Protocol (REP) standardına uyan basit bir metin dosyasıdır. Amacı, arama motoru ve diğer otomatik botlara (crawler/örümcek) sitenin hangi bölümlerini tarayabileceklerini, hangilerinden uzak durmaları gerektiğini bildirmektir. Bu dosyayı oluşturmak için yazılımcı olmanız gerekmez; Not Defteri gibi herhangi bir düz metin editörü yeterlidir.
Önemli bir noktayı en başta netleştirelim: robots.txt bir güvenlik aracı değildir. Disallow ile engellediğiniz bir adres yine de tarayıcıdan ulaşılabilir; sadece uyumlu botlardan tarama talebi görmesini engellersiniz. Şifre gerektiren özel alanları korumak için robots.txt yerine sunucu tarafında kimlik doğrulama (örn. .htaccess parola koruması) kullanmalısınız. Robots.txt, “lütfen burayı tarama” diyen kibarca bir tabela gibidir; kötü niyetli botlar bu tabelayı görmezden gelebilir.

Robots.txt Dosyası Ne İşe Yarar?
Dosyanın temel görevi, sitenizin arama motorlarıyla ilişkisini yönetmektir. Doğru yapılandırıldığında şu faydaları sağlar:
- Tarama bütçesini korur: Büyük sitelerde botun gereksiz sayfalarda (filtre URL’leri, arama sonuçları, sepet sayfaları) zaman harcamasını önleyerek önemli sayfalara odaklanmasını sağlar.
- Sunucu yükünü azaltır: Ağır veya tekrar eden bölümlerin taranmasını engelleyerek sunucu kaynaklarını rahatlatır.
- Site haritasını bildirir: Sitemap satırıyla XML site haritanızın yerini botlara doğrudan gösterirsiniz.
- Geliştirme/test alanlarını gizler: Yapım aşamasındaki bölümlerin erkenden taranmasını engeller.
Buna karşılık, robots.txt’nin yapamadığı şey, zaten indekslenmiş bir sayfayı Google sonuçlarından kaldırmaktır. Bir adresi Disallow ile engellerseniz Google o sayfanın içeriğini göremez, ama başka sitelerden link alıyorsa URL’yi yine de “içerik açıklaması yok” notuyla sonuçlarda gösterebilir. Bir sayfanın sonuçlardan tamamen çıkmasını istiyorsanız doğru yöntem noindex meta etiketidir — ve bunun çalışması için sayfanın robots.txt’de engellenmemiş olması gerekir, çünkü Google noindex etiketini görebilmek için sayfayı tarayabilmelidir.
Robots.txt Dosyası Nasıl Oluşturulur?
Robots.txt oluşturmanın iki yöntemi vardır. Birincisi, hazır bir robots.txt generator aracıyla ya da WordPress gibi platformlarda bir SEO eklentisiyle (örn. Yoast SEO, Rank Math) dosyayı otomatik üretmektir. İkincisi, dosyayı elle yazıp sitenizin kök dizinine yüklemektir. Elle oluşturma adımları şunlardır:
- Bir metin editörü açın ve dosyayı tam olarak robots.txt adıyla kaydedin (büyük/küçük harf farkı önemlidir, ad tam olarak bu olmalıdır).
- Kodlamayı UTF-8 seçin; aksi halde bazı karakterler hatalı okunabilir.
- Her gruba User-agent satırıyla başlayın, ardından Disallow ve gerekirse Allow kurallarını ekleyin.
- Sonuna XML site haritanızın tam adresini Sitemap: satırıyla ekleyin.
- Dosyayı FTP veya hosting kontrol paneliniz (cPanel Dosya Yöneticisi) üzerinden sitenin kök dizinine (public_html) yükleyin.
- Tarayıcıdan https://alanadiniz.com/robots.txt adresini açarak dosyanın göründüğünü doğrulayın.
Dosyanın kök dizinde olması şart değildir desek yanıltıcı olur: robots.txt mutlaka kök dizinde bulunmalıdır. Bir alt klasöre koyarsanız (örn. /klasor/robots.txt) arama motorları onu dikkate almaz. Ayrıca her alt alan adı (subdomain) ve her protokol (http/https) için ayrı robots.txt geçerlidir.

| Kural | Açıklama |
|---|---|
| Dosya adı | Tam olarak robots.txt (küçük harf) |
| Konum | Sitenin kök dizini: alanadiniz.com/robots.txt |
| Kodlama | UTF-8 |
| Biçim | Düz metin (.txt), her satırda tek direktif |
| Dosya boyutu | Google için en fazla 500 KiB; sonrası yok sayılır |
| Kapsam | Her subdomain ve protokol için ayrı dosya |
Robots.txt Komutları ve Direktifleri
Robots.txt dosyası birkaç temel direktiften oluşur. Bunları bilmek, dosyayı doğru kurmanın anahtarıdır. Aşağıdaki tablo en sık kullanılan komutları ve Google tarafından desteklenip desteklenmediklerini özetliyor.
| Direktif | İşlevi | Google desteği |
|---|---|---|
| User-agent | Kuralın hangi bota uygulanacağını belirler (* tüm botlar) | Evet |
| Disallow | Belirtilen yol veya klasörün taranmasını engeller | Evet |
| Allow | Engellenen bir klasör içinde istisna tanır | Evet |
| Sitemap | XML site haritasının adresini bildirir | Evet |
| Crawl-delay | İstekler arasında bekleme süresi tanımlar | Hayır (Bing/Yandex destekler) |
| Noindex | robots.txt içinde indekslemeyi engellemeye çalışır | Hayır (artık desteklenmiyor) |
Önemli güncelleme: Google, robots.txt içinde yalnızca user-agent, Disallow, Allow ve Sitemap alanlarını resmen destekler. Crawl-delay Googlebot tarafından dikkate alınmaz; tarama hızını ayarlamak için Google Search Console kullanmanız gerekir. Eskiden bazı siteler robots.txt’ye “Noindex:” satırı yazardı; Google 2019’dan beri bu satırı da desteklemiyor. Yani bir sayfayı indeksten çıkarmak için robots.txt değil, sayfanın içine <meta name=”robots” content=”noindex”> etiketi koymalısınız.
Joker Karakterler ($ ve *)
Google ve çoğu büyük arama motoru, daha esnek kurallar için iki özel karakteri destekler:
- * (yıldız): Herhangi bir karakter dizisini temsil eder. Örneğin Disallow: /*.pdf$ tüm PDF dosyalarını engeller.
- $ (dolar): URL’nin sonunu belirtir. Disallow: /*.php$ yalnızca .php ile biten adresleri kapsar.
Robots.txt Kodları ve Örnekleri
Aşağıda en sık ihtiyaç duyulan robots.txt senaryolarını ve bunlara karşılık gelen kodları bulacaksınız. Her bloğu olduğu gibi kopyalayıp ihtiyacınıza göre düzenleyebilirsiniz.

1. Tüm Siteye Tam Erişim Vermek
User-agent: * Disallow:
Disallow satırının boş bırakılması “hiçbir şeyi engelleme” anlamına gelir. Bu, tüm botların tüm sayfaları tarayabileceği en yaygın yapılandırmadır. Aynısını Allow: / ile de ifade edebilirsiniz.
2. Tüm Botlara Tüm Siteyi Kapatmak
User-agent: * Disallow: /
Disallow’dan sonraki tek bir / tüm siteyi taramaya kapatır. Genellikle yalnızca geliştirme/test ortamlarında kullanılır. Canlı sitede dikkatsizce bırakıldığında sitenin aramadan tamamen kaybolmasına yol açan en sık hatadır.
3. Belirli Bir Klasörü Engellemek
User-agent: * Disallow: /ozel/ Disallow: /sepet/
Bu yapılandırma /ozel/ ve /sepet/ klasörlerindeki tüm içeriği taramaya kapatır; sitenin geri kalanı serbest kalır. Klasör adının sonundaki / işaretine dikkat edin.
4. Bir Klasörü Engelleyip İçindeki Tek Sayfaya İzin Vermek
User-agent: * Disallow: /dosya1/ Allow: /dosya1/site.html
Burada /dosya1/ klasörünün tamamı engellenir, ancak Allow satırı sayesinde site.html sayfası istisna tutulup taranabilir. Allow direktifi, geniş bir klasörü kapatıp içinde birkaç sayfaya izin vermek istediğinizde çok işe yarar.
5. Belirli Bir Bota Özel Kural Yazmak
User-agent: Googlebot Disallow: /private/ User-agent: Bingbot Disallow: /test/
User-agent satırına bot adını yazarak kuralı yalnızca o bota uygulayabilirsiniz. Örnekte Google’ın tarayıcısı olan Googlebot /private/ klasörünü, Bing’in tarayıcısı Bingbot ise /test/ klasörünü göremez. Her bot, kendisine en uygun (en spesifik) User-agent grubunu okur.
6. Site Haritasını Bildirmek
User-agent: * Disallow: /wp-admin/ Allow: /wp-admin/admin-ajax.php Sitemap: https://alanadiniz.com/sitemap.xml
Yukarıdaki örnek tipik bir WordPress robots.txt yapılandırmasıdır: yönetim paneli engellenir, ancak temaların çalışması için admin-ajax.php’ye izin verilir ve site haritasının adresi bildirilir. Sitemap satırı belirli bir User-agent’a bağlı değildir ve birden fazla site haritası ekleyebilirsiniz.
Sayfayı Aramadan Çıkarmak: Noindex Meta Etiketi
Sık karıştırılan bir konuyu netleştirelim. Bir sayfanın Google sonuçlarında hiç görünmemesini istiyorsanız, doğru yöntem robots.txt’de Disallow yazmak değil, sayfanın <head> bölümüne noindex meta etiketi eklemektir:
<meta name="robots" content="noindex, nofollow">
Bu etiket sayesinde Google sayfayı tarar, noindex talimatını görür ve sayfayı sonuçlardan tamamen çıkarır. Kritik nokta şudur: Google’ın bu etiketi görebilmesi için sayfa robots.txt’de engellenmemiş olmalıdır. Yani aynı sayfayı hem Disallow ile engelleyip hem de noindex koyarsanız, Google sayfayı tarayamadığı için noindex’i de göremez. Aramadan çıkarmak istediğiniz sayfalarda Disallow değil noindex kullanın.
Yapay Zeka Botlarını robots.txt ile Yönetmek (2025)
Son dönemde robots.txt’nin önemi, geleneksel arama motorlarının ötesine geçti. ChatGPT, Gemini ve benzeri yapay zeka modellerini besleyen botlar da robots.txt kurallarına (çoğunlukla) uyar. İyi haber şu: bu botların “eğitim” ve “canlı alıntı” sürümleri ayrı user-agent’lara sahip olduğu için, içeriğinizin yapay zeka eğitiminde kullanılmasını engellerken aramada görünür kalmaya devam edebilirsiniz.
| Bot | Sahibi | Görevi |
|---|---|---|
| GPTBot | OpenAI | Model eğitimi için içerik toplar |
| OAI-SearchBot | OpenAI | ChatGPT aramasında canlı alıntı |
| Google-Extended | Gemini/Vertex AI eğitimi (aramayı etkilemez) | |
| ClaudeBot | Anthropic | Model eğitimi için içerik toplar |
Örneğin yapay zeka eğitim botlarını engellemek ama Google aramasında kalmak isterseniz:
User-agent: GPTBot Disallow: / User-agent: Google-Extended Disallow: / User-agent: ClaudeBot Disallow: /
Google, Google-Extended engellemenin Googlebot’u ve arama sıralamanızı hiçbir şekilde etkilemediğini resmen doğrulamıştır; bu satır yalnızca içeriğinizin Gemini gibi üretici yapay zeka ürünlerinde kullanılıp kullanılmayacağını kontrol eder. Tersine, içeriğinizin yapay zeka yanıtlarında kaynak gösterilmesini istiyorsanız bu botlara izin vermeniz mantıklıdır. Karar tamamen içerik stratejinize bağlıdır.
Sık Yapılan Robots.txt Hataları
- Canlı sitede Disallow: / bırakmak: Test ortamından taşınırken bu satırı silmeyi unutmak, sitenin tamamen indeksten kalkmasına yol açar.
- Dosyayı alt klasöre koymak: robots.txt yalnızca kök dizinde çalışır; başka konumda yok sayılır.
- Disallow ile noindex’i karıştırmak: Engellenen sayfada noindex etiketi okunamaz; sayfa sonuçlarda kalmaya devam edebilir.
- CSS/JS dosyalarını engellemek: Google sayfayı doğru oluşturabilmek için stil ve script dosyalarına erişmek ister; bunları engellemek olumsuz etki yapabilir.
- Sitemap satırını unutmak: Site haritasını bildirmek tarama verimini artırır.
- Büyük/küçük harf hatası: URL yolları büyük/küçük harfe duyarlıdır; /Klasor/ ile /klasor/ farklı kabul edilir.
Oluşturduğunuz dosyayı yayına almadan önce Google Search Console’daki robots.txt raporuyla test etmeniz, hatalı bir kuralın sitenize zarar vermesini önler.
WordPress’te Robots.txt
WordPress, hiçbir dosya yoksa sanal (gerçek dosya olmayan) bir robots.txt üretir. Bunu özelleştirmek için Yoast SEO veya Rank Math gibi eklentilerin dosya düzenleyicisini kullanabilir ya da public_html altına elle gerçek bir robots.txt yükleyebilirsiniz. Tipik bir WordPress yapılandırması /wp-admin/ klasörünü engeller ama admin-ajax.php’ye izin verir. Sitenizin hızlı ve sorunsuz çalışması için sağlam bir altyapı seçtiğinizde, robots.txt gibi SEO ayarları da daha verimli sonuç verir.





