
Çok dilli bir site için robots.txt dosyasında hangi kuralları kullanmalıyım?
Bir SEO editörü olarak, Google AdSense politikalarına ve arama motoru optimizasyonunun inceliklerine hakim olmak, dijital dünyadaki varlığınız için hayati önem taşır. Özellikle
çok dilli siteler söz konusu olduğunda, `robots.txt` dosyasının doğru yapılandırılması, sitenizin performansı, arama motorlarındaki görünürlüğü ve dolayısıyla reklam geliri potansiyeli üzerinde doğrudan bir etkiye sahiptir. Bu makalede, çok dilli bir site için `robots.txt` dosyanızda hangi kuralları uygulamanız gerektiğini, AdSense uyumluluğunu göz önünde bulundurarak detaylı bir şekilde ele alacağız.
Robots.txt ve Çok Dilli Siteler: Neden Önemli?
`robots.txt` dosyası, web sitenizin kök dizininde yer alan ve arama motoru botlarına (tarayıcılarına) sitenizde hangi sayfaları tarayabileceklerini ve hangilerini tarayamayacaklarını bildiren basit bir metin dosyasıdır. Bu dosya, site haritanızı nerede bulacaklarını da belirtebilir. Doğru kullanıldığında, `robots.txt` dosyası,
SEO performansınızı önemli ölçüde artırabilir ve
tarama bütçenizi optimize etmenize yardımcı olabilir. Yanlış kullanıldığında ise, sitenizin önemli bölümlerinin arama sonuçlarında görünmesini engelleyebilir, hatta sitenizin tamamının dizine eklenmemesine neden olabilir ki bu, AdSense reklamlarının gösterilmesi için kabul edilemez bir durumdur.
Çok dilli bir site için bu önem daha da artar. Her dil sürümü, arama motorları tarafından ayrı bir entity olarak algılanır ve taranır. Eğer dil sürümleri arasında yanlış bir engelleme yaparsanız, Google (ve diğer arama motorları) sitenizin tüm dil varyantlarını doğru bir şekilde keşfedemez veya anlayamaz. Bu da `hreflang` etiketlerinin etkinliğini azaltır ve uluslararası
dizin oluşturma çabalarınızı sekteye uğratır. AdSense açısından bakıldığında, taranmayan ve dizine eklenmeyen hiçbir sayfada reklam gösterilemez. Dolayısıyla, potansiyel gelir kaybı yaşanır. AdSense, kaliteli ve kullanıcı dostu içeriği destekler; bu tür içeriğin botlar tarafından erişilebilir olması bir zorunluluktur.
Temel Robots.txt Direktifleri ve Kullanım Alanları
`robots.txt` dosyası birkaç temel direktiften oluşur:
*
`User-agent:`: Bu direktif, aşağıdaki kuralların hangi arama motoru botu için geçerli olduğunu belirtir. Örneğin, `User-agent: Googlebot` yalnızca Google'ın tarayıcısını hedeflerken, `User-agent: *` tüm botları hedefler. Çok dilli bir site için genellikle tüm botlara yönelik evrensel kurallar belirlemek en yaygın yaklaşımdır.
*
`Disallow:`: Bu kural, belirtilen yoldaki dosya veya dizinlerin taranmasını engeller. Örneğin, `Disallow: /admin/` yönetici panelinizin taranmasını engeller. AdSense politikaları gereği, kullanıcılar için anlamlı olmayan veya düşük kaliteli içerik barındıran sayfaların taranmasını engellemek mantıklı olabilir.
*
`Allow:`: `Disallow` direktifiyle engellenen bir dizin içindeki belirli bir dosyanın veya alt dizinin taranmasına izin vermek için kullanılır. Örneğin, `Disallow: /private/` ve `Allow: /private/public-doc.html`. Çok dilli sitelerde, bazen dil dizinleri karmaşık olabilir ve bu kural belirli istisnaları yönetmek için faydalı olabilir.
*
`Sitemap:`: Bu direktif, sitenizin XML site haritasının konumunu belirtir. Arama motorları, bu site haritasını kullanarak sitenizdeki tüm önemli sayfaları daha kolay keşfedebilir. Çok dilli siteler için her dil sürümü için ayrı bir site haritası veya tek bir ana site haritası içinde tüm dil sürümlerini barındıran gelişmiş bir yapı kullanmak önemlidir.
Çok Dilli Siteler İçin Özel Robots.txt Stratejileri
Tüm Dil Sürümlerini Erişime Açık Tutmak
En temel ve kritik kural, sitenizin tüm dil sürümlerinin arama motorları tarafından taranabilir olmasını sağlamaktır. Hiçbir dil sürümünü yanlışlıkla `Disallow` kuralıyla engellememelisiniz. Örneğin, siteniz `example.com/en/`, `example.com/de/` ve `example.com/tr/` gibi alt dizinler kullanıyorsa, `robots.txt` dosyanızda şu şekilde genel bir izin olmalıdır:
```
User-agent: *
Disallow:
```
Bu, sitenizdeki her şeyin taranmasına izin verildiği anlamına gelir. Eğer bazı genel alt dizinleri engellemek istiyorsanız (örneğin, `/temp/` veya `/test/`), bunu dikkatlice yapmalısınız:
```
User-agent: *
Disallow: /temp/
Disallow: /test/
```
`hreflang` etiketleri arama motorlarına bir sayfanın alternatif dil veya bölge versiyonlarını bildiren HTML etiketleridir. Bu etiketlerin düzgün çalışabilmesi için, bahsettikleri tüm sayfaların taranabilir ve erişilebilir olması gerekir. Eğer bir sayfayı `robots.txt` ile engellerseniz, Google o sayfanın `hreflang` etiketlerini göremez ve bu da uluslararası hedefleme stratejinizi bozar. Bu durum, AdSense'in doğru kitleye ulaşmasını da zorlaştırır.
Düşük Değerli veya Yinelenen İçerikleri Yönetmek
Çok dilli sitelerde bazen düşük değerli veya teknik olarak yinelenen içerikler oluşabilir. Bunlar şunları içerebilir:
*
Kullanıcı Profilleri, Arama Sonuçları, Test Sayfaları: Bu tür sayfalar genellikle kullanıcılara özgü veriler içerir veya sitenizdeki genel içeriğe değer katmaz. Örneğin, `/user/profile/`, `/search?q=`, `/staging/` gibi yollar. Bu sayfaların taranmasını engellemek,
tarama bütçenizi daha değerli içeriklere yönlendirmenize yardımcı olur ve AdSense'in odaklanmasını istediğiniz kaliteli içerikle ilgili sinyalleri güçlendirir.
*
Çeviri Araçları ile Oluşturulan Ham İçerikler: Bazı siteler, henüz düzenlenmemiş otomatik çeviri sonuçlarını kısa süreliğine yayına alabilir. Bu tür ham ve kalitesiz içeriğin taranmasını engellemek, sitenizin genel kalitesini korur ve Google'ın düşük kaliteli içerik algısını azaltır. Bu,
AdSense onay süreci ve reklam yerleşimi için olumlu bir adımdır.
*
URL Parametreleri: Bazı CMS'ler veya e-ticaret siteleri, sıralama, filtreleme veya oturum kimlikleri için URL parametreleri (`?sort=price`, `?sessionid=`) oluşturabilir. Bu parametreler, aynı içeriğin farklı URL'lerden erişilmesine neden olabilir ve yinelenen içerik sorunlarına yol açabilir. `robots.txt` ile bu parametreleri içeren URL'leri engellemek yerine, genellikle Google Search Console'da URL parametrelerini yönetmek veya canonical etiketleri kullanmak daha etkili bir yöntemdir. Ancak, bazı durumlarda `Disallow: /*?param=` gibi bir kural işe yarayabilir.
Site Haritalarını Belirtmek
`Sitemap:` direktifi, arama motorlarının tüm dil sürümlerini içeren site haritanızı kolayca bulmasını sağlar. Çok dilli siteler için birkaç yaklaşım vardır:
*
Her Dil için Ayrı Site Haritası: `sitemap_en.xml`, `sitemap_de.xml`, `sitemap_tr.xml` gibi her dil için ayrı bir site haritası oluşturup bunları `robots.txt`'nizde listelemek.
*
Ana Site Haritası (Index Sitemap): Tüm dil site haritalarını içeren bir ana site haritası oluşturmak ve yalnızca bu ana site haritasını `robots.txt`'nizde belirtmek. Bu, genellikle daha ölçeklenebilir bir çözümdür.
Örnek:
```
User-agent: *
Disallow: /admin/
Sitemap: https://www.example.com/sitemap_index.xml
```
Veya her dil için ayrı:
```
User-agent: *
Disallow: /admin/
Sitemap: https://www.example.com/sitemap_en.xml
Sitemap: https://www.example.com/sitemap_de.xml
Sitemap: https://www.example.com/sitemap_tr.xml
```
Site haritalarınızın `hreflang` etiketlerini doğru bir şekilde içerdiğinden emin olun, bu da Google'ın dil sürümleri arasındaki ilişkileri anlamasına yardımcı olur.
AdSense Politikaları ile Uyum
AdSense, reklam gösterimi için içeriğin taranabilir ve erişilebilir olmasını zorunlu kılar. Bu nedenle:
*
Değerli İçeriği Asla Engellemeyin: Reklam yayınlamak istediğiniz hiçbir içeriği `robots.txt` ile engellemeyin.
*
Kaliteye Odaklanın: `robots.txt` dosyasını, sitenizdeki düşük kaliteli veya yararlı olmayan içeriklerin taranmasını engellemek için kullanabilirsiniz. Bu, sitenizin genel kalitesini artırır ve AdSense'in sitenizi daha olumlu değerlendirmesine yardımcı olabilir. Örneğin,
AdSense politikaları genellikle yetersiz içerik barındıran veya spam olarak algılanabilecek sayfaları onaylamaz. Bu tür sayfaları engellemek sitenizin genel sağlığına katkıda bulunur.
Yaygın Hatalar ve Kaçınılması Gereken Durumlar
*
Yanlışlıkla Tüm Siteyi Engellemek: `Disallow: /` kuralını kullanırsanız, sitenizin tamamının taranmasını engellersiniz. Bu, sitenizin arama sonuçlarından kaybolmasına ve AdSense reklamlarının tamamen durmasına neden olur.
*
`hreflang` İçeren Sayfaları Engellemek: Yukarıda belirtildiği gibi, `hreflang` etiketlerinin bulunduğu sayfaların taranmasını engellemek, uluslararası SEO stratejinizi bozar.
*
`noindex` ile `Disallow` Karışıklığı: `robots.txt`'deki `Disallow` kuralı, botların sayfayı *tarayamaz* hale getirir, ancak Google bu sayfayı başka kaynaklardan (örneğin, harici linkler) öğrenmişse dizine *ekleyebilir*. Bir sayfayı kesinlikle dizine eklemek istemiyorsanız, `noindex` meta etiketini (`
`) kullanmalısınız. Ancak `noindex` etiketinin işlenmesi için sayfanın taranabilir olması gerekir. Dolayısıyla, `noindex` kullanacaksanız, sayfayı `robots.txt` ile engellemeyin. Sayfa
dizin oluşturma süreçlerini daha detaylı anlamak için '/makale.php?sayfa=noindex-ve-nofollow-farklari' başlıklı içeriğimize de göz atmanız faydalı olacaktır.
*
Dil Alt Dizinlerini Yanlış Engellemek: Örneğin, `Disallow: /en` kullanmak, `/en/` ile başlayan *her şeyi* engeller. Bu, sitenizin İngilizce sürümünü tamamen devre dışı bırakır.
Robots.txt Dosyanızı Nasıl Test Etmelisiniz?
`robots.txt` dosyanızda herhangi bir değişiklik yaptıktan sonra, etkilerini test etmek çok önemlidir.
1.
Google Search Console `robots.txt` Test Aracı: Bu araç, `robots.txt` dosyanızı kontrol etmenize ve belirli bir URL'nin Googlebot tarafından taranıp taranamayacağını doğrulamanıza olanak tanır. Olası hataları veya engellemeleri görmenizi sağlar.
2.
Canlı Testler: `robots.txt` dosyanızdaki değişiklikleri yapmadan önce veya yaptıktan sonra sitenizin birkaç önemli sayfasını Google'da arayarak dizin durumlarını kontrol edin. Örneğin,
SEO performansınızı artırmak için 'Google Search Console' kullanımı hakkında daha fazla bilgi almak isterseniz, '/makale.php?sayfa=search-console-kullanimi' sayfamızı ziyaret edebilirsiniz.
Sonuç: Dengeli ve Stratejik Yaklaşım
Çok dilli bir site için `robots.txt` yönetimi, hassasiyet ve stratejik bir yaklaşım gerektirir. Temel prensip, arama motorlarının sitenizdeki tüm değerli ve kullanıcıya yönelik içeriği sorunsuz bir şekilde tarayabilmesini sağlamaktır. Bu, `hreflang` etiketlerinin doğru şekilde işlenmesi, sitenizin uluslararası arama sonuçlarında görünürlüğünün artırılması ve en önemlisi, AdSense reklamlarının potansiyelini maksimize etmek için kritik öneme sahiptir.
`robots.txt` dosyanızda yalnızca gerçekten taranmasını istemediğiniz düşük değerli veya teknik içerikleri engelleyin. Asla önemli dil sürümlerini veya reklam göstermek istediğiniz sayfaları engellemeyin. Düzenli olarak
robots.txt üretim süreçlerinizi gözden geçirin ve değişiklikleri dikkatlice test edin. Bu şekilde, hem SEO hedeflerinize ulaşabilir hem de AdSense üzerinden sürdürülebilir bir gelir akışı sağlayabilirsiniz. Unutmayın, bot dostu bir site, kullanıcı dostu bir sitedir ve kullanıcı dostu bir site, Google'ın ve AdSense'in takdir ettiği bir sitedir.
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.