
SEO'ya zarar vermeyen, tüm alt klasörleri engelleyen robots.txt nasıl yazılır?
Web sitenizin görünürlüğünü yönetmek,
arama motoru optimizasyonu (SEO) stratejisinin temel taşlarından biridir. Bazen web sitenizin belirli bölümlerinin arama motorları tarafından dizine eklenmesini istemeyebilirsiniz. Bu durum, geliştirme aşamasındaki sayfalar, özel kullanıcı panelleri, hassas veriler içeren bölümler, test ortamları veya düşük kaliteli/yinelenen içerikler için geçerli olabilir. İşte bu noktada
robots.txt dosyası devreye girer. Ancak önemli olan, bu engellemeyi yaparken sitenizin genel SEO sağlığına zarar vermemek ve yanlışlıkla önemli içeriklerinizi gizlememektir.
Bu makalede, tüm alt klasörleri arama motoru botlarına kapatmanın en güvenli ve SEO dostu yollarını, adım adım ve anlaşılır bir dille açıklayacağız.
Robots.txt Dosyasının Amacı ve Çalışma Prensibi
Robots.txt dosyası, web sitenizin kök dizininde bulunan, arama motoru botlarına sitenizin hangi bölümlerini tarayabileceklerini veya tarayamayacaklarını bildiren basit bir metin dosyasıdır. Bu dosya, site haritası gibi web sitenizin bir haritasını sunmaz; daha ziyade bir "giriş kartı" veya "yol gösterici" görevi görür. Botlar bir web sitesini ziyaret ettiklerinde, genellikle ilk olarak `robots.txt` dosyasını kontrol ederler. Bu dosyada belirtilen kurallara uyarak, sitenin hangi URL'lerinin taranıp taranmayacağına karar verirler.
Önemli bir not: `robots.txt`, bir "tavsiye" niteliğindedir, "kesin bir komut" değil. Çoğu iyi niyetli
arama motoru botları (Googlebot, Bingbot vb.) bu kurallara uyar. Ancak kötü niyetli botlar veya güvenlik açığı tarayıcıları bu dosyayı görmezden gelebilir. Bu nedenle, `robots.txt` bir güvenlik önlemi olarak *kullanılmamalıdır*. Hassas verilerin korunması için sunucu tarafı yetkilendirme veya şifreleme gibi daha güçlü güvenlik önlemleri gereklidir.
Crawling (Tarama) ve Indexing (Dizin Ekleme) Arasındaki Fark
Robots.txt'nin temel amacı taramayı engellemektir. Bir sayfanın taranması engellendiğinde, arama motorları o sayfanın içeriğini okuyamaz ve dolayısıyla onu genellikle dizine eklemez. Ancak, bir sayfa başka sitelerden veya sitenizin içinden harici olarak bağlantı alıyorsa, arama motoru bu URL'yi bilip dizinine ekleyebilir (içeriği olmadan). Bu durumda, arama sonuçlarında sayfanın başlığı görünebilir ancak bir açıklama yerine "Bu sayfa için bilgi mevcut değil" gibi bir ifade yer alabilir. Kesinlikle
dizin ekleme istemediğiniz sayfalar için `noindex` meta etiketi daha güvenilir bir yöntemdir.
Neden Tüm Alt Klasörleri Engellemek İstersiniz?
Web sitenizde tüm alt klasörlerin engellenmesini istemek için çeşitli geçerli nedenler olabilir. Bu durumlar genellikle sitenizin belirli bölümlerinin arama motorları için bir değer taşımadığı veya görünür olmaması gerektiği senaryolarda ortaya çıkar:
*
Geliştirme ve Test Ortamları: Sitenizin canlıya alınmadan önceki test sürümleri (`/dev/`, `/staging/`) veya sürekli geliştirme yapılan bölümler, arama motorları tarafından dizine eklenmemelidir. Bu, erken erişim veya hata içeren sayfaların arama sonuçlarında görünmesini engeller.
*
Düşük Kaliteli veya Yinelenen İçerik: E-ticaret sitelerindeki dinamik olarak oluşturulan filtreleme sayfaları, sıralama seçenekleri veya bazı etiket sayfaları, büyük ölçüde yinelenen içerik üretebilir. Bu tür sayfaların dizine eklenmesi, sitenizin genel SEO performansını düşürebilir.
*
Yönetim Panelleri ve Kullanıcı Alanları: `/admin/`, `/dashboard/`, `/profil/` gibi bölümler, web sitesi yöneticilerine veya kayıtlı kullanıcılara özeldir. Bu sayfaların arama sonuçlarında görünmesi hem güvenlik riski oluşturabilir hem de kullanıcılara gereksiz bilgi sağlayabilir.
*
Hassas Veriler: Şirket içi belgeler, özel raporlar veya müşteri verileri içeren klasörler asla kamuya açık olmamalı ve arama motorları tarafından dizine eklenmemelidir.
*
Medya Klasörleri: Bazen resimler veya PDF'ler gibi medya dosyalarını içeren klasörlerin direkt olarak dizine eklenmesi istenmeyebilir. Bunun yerine, bu dosyaların sadece ilgili sayfalarda görünmesi hedeflenir.
Bu senaryolarda, doğru yapılandırılmış bir `robots.txt` dosyası, gereksiz tarama yükünü azaltarak sunucunuzu rahatlatır ve arama motorlarının sitenizin en değerli içeriğine odaklanmasını sağlar.
Tüm Alt Klasörleri Engelleyen Robots.txt Yapısı
Tüm alt klasörleri engellerken, ana dizinin (kök dizin) arama motorları tarafından taranabilir ve dizine eklenebilir kalmasını sağlamak kritik öneme sahiptir. İşte bunu gerçekleştiren `robots.txt` yapılandırması:
```
User-agent: *
Disallow: /*/
```
Bu iki satırın anlamını açalım:
*
`User-agent: *`: Bu kuralın tüm arama motoru botları için geçerli olduğunu belirtir. Belirli bir bot için (`User-agent: Googlebot` gibi) kural yazmak isterseniz, yıldız (*) yerine botun adını yazabilirsiniz. Ancak "tüm alt klasörleri engelle" senaryosunda, genellikle tüm botları hedeflemek istenir.
*
`Disallow: /*/`: Bu, "kök dizinin hemen altındaki tüm alt dizinleri ve bu dizinlerin içindeki her şeyi engelle" anlamına gelir.
* İlk `/` işareti, web sitesinin kök dizinini temsil eder.
* `*` (yıldız) bir joker karakterdir; herhangi bir karakter dizisini eşleştirir.
* İkinci `/` işareti, bunun bir dizin yolu olduğunu belirtir.
Örneğin, `www.example.com` adresiniz varsa:
* `www.example.com/blog/` klasörü ve içindeki her şey engellenir.
* `www.example.com/urunler/` klasörü ve içindeki her şey engellenir.
* `www.example.com/hakkimizda/` klasörü ve içindeki her şey engellenir.
Ancak, `www.example.com/index.html` veya `www.example.com/ana-sayfa` gibi kök dizindeki dosyalar veya direkt olarak kök dizin (anasayfa), bu kuraldan etkilenmez ve taranabilir kalır.
Kök Dizini Açıkça Belirtmek (İsteğe Bağlı ama Faydalı)
Bazı durumlarda, karışıklığı önlemek ve kök dizinin açıkça taranabilir olduğunu belirtmek için aşağıdaki gibi bir `Allow` direktifi eklemek isteyebilirsiniz:
```
User-agent: *
Disallow: /*/
Allow: /
```
*
`Allow: /`: Bu satır, kök dizinin taranmasına izin verildiğini açıkça belirtir. `Disallow: /*/` zaten kök dizini engellemediği için bu satır teknik olarak zorunlu değildir, ancak okunabilirliği ve niyetin netliğini artırabilir. Özellikle karmaşık `robots.txt` dosyalarında kafa karışıklığını gidermeye yardımcı olur.
Unutmayın, bu `robots.txt` dosyasını sitenizin kök dizinine (örneğin, `public_html` veya `www` klasörüne) `robots.txt` adıyla kaydetmelisiniz.
robots.txt dosyanızı düzenlerken kullanabileceğiniz daha detaylı yöntemler için
robots.txt gelişmiş kullanım sayfamızı ziyaret edebilirsiniz.
Robots.txt Kullanımında Dikkat Edilmesi Gerekenler ve SEO Etkileri
Robots.txt, güçlü bir araç olsa da, yanlış kullanıldığında sitenizin SEO'suna ciddi zararlar verebilir. Bu nedenle, aşağıdaki noktalara özellikle dikkat etmek önemlidir:
1. Güvenlik Önlemi Değildir
Daha önce de belirttiğimiz gibi, `robots.txt` bir güvenlik duvarı değildir. Hassas bilgileri engellemek için tek başına yeterli değildir. Engellediğiniz klasördeki dosyalara direkt linkle erişilebileceğini unutmayın. Gerçek güvenlik için sunucu tarafı şifreleme, parola koruması veya IP tabanlı erişim kısıtlamaları kullanmalısınız.
2. Önemli Kaynakları Engellemeyin
Modern web siteleri, HTML dışındaki birçok kaynağa (CSS, JavaScript, resimler) bağlıdır. Arama motoru botları, bir sayfanın nasıl göründüğünü ve kullanıcı deneyimini anlamak için bu kaynaklara erişebilmelidir. Eğer bu kaynakları içeren klasörleri `robots.txt` ile engellerseniz, arama motorları sayfanızı doğru bir şekilde render edemez ve bu durum
SEO performansını olumsuz etkiler. Genellikle, sitenizin `assets`, `css`, `js`, `images` gibi genel kaynak klasörlerini engellememelisiniz.
3. Dizinden Tamamen Kaldırma İçin `Noindex` Kullanın
Eğer bir sayfanın kesinlikle dizine eklenmemesini ve arama sonuçlarında görünmemesini istiyorsanız,
robots.txt dosyası yerine sayfanın HTML koduna `
` etiketini eklemek daha garantili bir yöntemdir. `robots.txt` bir sayfanın taranmasını engellerken, `noindex` etiketi, sayfa taranabilse bile (örneğin, yanlışlıkla `robots.txt`'den kaldırılırsa) dizine eklenmemesini sağlar. Özellikle başka sitelerden veya kendi sitenizden çok sayıda link alan sayfalar için `noindex` daha etkilidir, çünkü botlar engellendiği halde URL'nin varlığından haberdar olup dizine ekleyebilirler.
4. Yanlışlıkla Tüm Siteyi Engellemeyin
En sık yapılan hatalardan biri, yanlış bir `Disallow` kuralıyla tüm siteyi veya kritik bölümleri engellemektir. `Disallow: /` komutu, sitenizdeki her şeyin taranmasını engeller ve bu durum, sitenizin arama sonuçlarından tamamen kaybolmasına neden olur. Bu nedenle `robots.txt` dosyanızı oluştururken veya düzenlerken son derece dikkatli olmalısınız.
5. Robots.txt Cache Süresi
Arama motorları, `robots.txt` dosyanızı düzenli aralıklarla tarar ve değişiklikleri önbelleğine alır. Ancak bu güncellemelerin tüm botlara yansıması biraz zaman alabilir. Acil bir değişiklik yaptıysanız (örneğin, yanlışlıkla engellediğiniz önemli bir bölümü açtıysanız),
Google Search Console gibi araçları kullanarak botların `robots.txt` dosyanızı yeniden okumasını isteyebilirsiniz.
Bu konuda daha fazla bilgi ve diğer
arama motoru optimizasyonu ipuçları için
SEO temelleri makalemize göz atabilirsiniz.
Robots.txt Değişikliklerini Test Etmek ve İzlemek
`robots.txt` dosyanızda herhangi bir değişiklik yaptığınızda, bu değişikliklerin beklediğiniz gibi çalıştığından emin olmak hayati önem taşır. Yanlış bir yapılandırma, sitenizin arama motorları tarafından yanlış taranmasına veya hiç taranmamasına yol açabilir.
Google Search Console Kullanımı
Google Search Console, `robots.txt` dosyanızı test etmek için en güçlü araçlardan birini sunar:
1.
Robots.txt Test Aracı: Google Search Console'a giriş yapın, mülkünüzü seçin ve sol menüden "Ayarlar" altında yer alan "Tarama İstatistikleri" veya doğrudan "Robots.txt Test Aracı"nı arayın. Bu araç, `robots.txt` dosyanızın güncel sürümünü gösterir ve belirli bir URL'nin herhangi bir bot tarafından engellenip engellenmediğini test etmenize olanak tanır.
2.
Dizin Kapsamı Raporu: Bu rapor, sitenizdeki hangi URL'lerin dizine eklendiğini, hangilerinin engellendiğini ve hangilerinde hata olduğunu gösterir. `robots.txt` değişikliklerinizin etkilerini uzun vadede buradan izleyebilirsiniz. Eğer engellediğiniz sayfalar hala "Dizine Eklendi" olarak görünüyorsa, `noindex` etiketini gözden geçirmelisiniz.
Düzenli Kontroller
`robots.txt` dosyanızı sadece bir kez ayarlayıp bırakmamalısınız. Web siteniz büyüdükçe veya yeni bölümler ekledikçe, `robots.txt` dosyanızın güncel ve doğru olduğundan emin olmak için düzenli olarak kontrol etmelisiniz. Eski veya yanlış kurallar, yeni eklenen içeriklerinizin beklenmedik şekilde engellenmesine neden olabilir.
Robots Txt Üretici ve Kullanım Kolaylığı
Manuel olarak `robots.txt` dosyası yazmak, özellikle karmaşık siteler için hatalara açık olabilir. Bu nedenle, bir
Robots Txt Üretici aracı kullanmak, doğru sözdizimini kullanmanıza ve istediğiniz kuralları kolayca oluşturmanıza yardımcı olabilir. Bu tür araçlar genellikle basit arayüzler sunar, botları seçmenize, Disallow ve Allow kurallarını eklemenize olanak tanır ve son `robots.txt` dosyanızı sizin için otomatik olarak oluşturur.
Bir
Robots Txt Üretici kullanmanın faydaları:
*
Sözdizimi Hatalarını Önleme: Doğru formatı ve sözdizimini garanti eder.
*
Hız ve Kolaylık: Karmaşık kuralları manuel olarak yazmak yerine, hızlıca oluşturmanızı sağlar.
*
Örnek Kurallar: Genellikle yaygın kullanım durumları için hazır şablonlar veya örnekler sunar.
Ancak, bir üretici kullansanız bile, oluşturulan `robots.txt` dosyasını anlamanız ve sitenizin gereksinimlerine uygun olduğundan emin olmak için her zaman manuel olarak kontrol etmeniz önemlidir.
Sonuç
Web sitenizin tüm alt klasörlerini arama motoru botlarından engellemek, doğru yapıldığında SEO'ya zarar vermeyen, hatta onu destekleyen bir stratejidir. `User-agent: *` ve `Disallow: /*/` kuralları ile kök dizin dışındaki tüm alt klasörleri etkili bir şekilde engelleyebilirsiniz. Ancak, bu işlemi yaparken `robots.txt`'nin bir güvenlik aracı olmadığını, önemli CSS/JS dosyalarını engellememeniz gerektiğini ve kesin
dizin ekleme engeli için `noindex` etiketini kullanmanız gerektiğini unutmamalısınız.
Robots.txt dosyanızda yapacağınız her değişikliği
Google Search Console gibi araçlarla test etmek ve sitenizin tarama durumunu düzenli olarak izlemek, olası sorunları erken teşhis etmenizi ve SEO performansınızı korumanızı sağlar. Doğru yapılandırılmış bir
robots.txt dosyası, web sitenizin SEO sağlığını korurken, istenmeyen içeriklerin arama sonuçlarında görünmesini engellemenin etkili bir yoludur.
Yazar: Ezgi Avcı
Ben Ezgi Avcı, bir Dijital Pazarlama Uzmanı. Platformumuzda teknolojiyi herkes için anlaşılır kılmak, karmaşık konuları basitleştirerek okuyucularımızın günlük yaşamında pratik olarak kullanabileceği bilgiler sunmak, yeni beceriler kazandırmak, farkındalık oluşturmak ve teknoloji dünyasındaki gelişmeleri anlaşılır bir dille aktarmak amacıyla yazıyorum.