Robots.txt nedir sorusunun cevabı bu makalede. Robots.txt dosyası bir web sitesinin en önemli teknik kısımlarından birisidir. Bu gün bir e-ticaret sitesi açmak hazır e-ticaret yazılımları ile çok kolay. Kullanmak istediğiniz yazılımı belirliyorsunuz aynı gün yayına veriliyor.
E-ticaret sitesi açmak kolay ama sadece site kurmakla olmuyor. Site hem kullanıcıların kolayca kullanıp satın alabileceği hem de arama motorlarının kolayca idexleyebileceği yapıda olmalıdır.
Bir e-ticaret sitesinde teknik olarak nitelendirilebilecek yapılması gereken işler vardır. Bunlardan biride robots.txt dosyasını hazırlamaktır. Bu makalede robot.txt nedir, bir e-ticaret sitesinde robots.txt dosyası nasıl hazırlanır onu anlatacağız.
Robots.txt nedir?
Robots.txt dosyası, bir web sitesinde arama motorları tarafından hangi kısımların indexlenebileceğinin yani hafızaya alınmasının arama motorları botlarına bildirilmesidir. Yani bir arama motoru web sitemizde şu sayfaları hafızasına alsın, şu sayfaları da hafızasına almasın diye yazılı talimat vermektir.
Şunu da belirtmek de fayda var biz arama motorlarına şu sayfaları ziyaret et hafızaya al desek de arama motorları yine de ziyaret edebilir. Veya sitemizde robots.txt dosyası olmasa da arama motorları yine sitemizi ziyaret eder. Robots.txt dosyası ile bizim yaptığımız arama motorları botlarına yol göstermektir.
Arama motorları bir web sitesini ziyaret ettiklerinde önce sayfaların ziyaret edilmesi ile ilgili bir kısıtlama olup olmadığına bakar ona göre hareket eder.
Bir web sitesinde amaç tüm sayfaların arama motorları tarafından indexletilmesidir. Ama bazı sayfalar vardır ki bunlar kullanıcı ile ilgili değil bizle yani yönetim paneli ile alakalıdır. O yüzden arama motorlarının bu sayfaları ziyaret emesi, hafızaya almasının bir faydası yoktur.
Bu durumda robots.txt dosyasında bunu belirmek gerekir. Ama bu belirtmeyi yaparken dikkatli yapmak gerekir. Yanlış bir belirtme tüm sitemizin olumsuz etkilenmesini neden olabilir. Robots.txt nedir? sorunun cevabını öğrenmeden bir değişiklik yapmamanızı tavsiye ederiz.
Robots.txt neden önemlidir?
Robots.txt dosyası SEO yani arama motorları optimizasyonu açısından çok önemlidir. Bu dosya ile arama motorlarına sitemizin hangi kısımlarını ziyaret edip hafızaya alabileceklerini belirtiyoruz. Veya şu şu kısımları ziyaret etmene gerek yok diyebiliyoruz.
Bunu yapmaktaki amacımız arama motorlarına sitemizi nasıl daha verimli tarayabilecekleri konusunda yol göstermektir. Bu işlemler büyük bir dikkatle yapılmalı, zira küçük bir hata sitemizi arama motorları için erişilemez hale getirebilir.
Bir Robots.txt dosyasında aşağıdaki kısımlar bulunur..
- User-agent
- Disallow
- Allow
- Sitemap
- Crawl-delay
User-agent
Sitemizi ziyaret eden her arama motoru kendisini bir ziyaretçi yani user-agent olarak tanımlar. Yani Google robotları Googlebot olarak, Yahoo robotlarını Slurp ve Bing robotunu BingBot olarak tanımlar.
Robots.txt sosyasında birden fazla user-agent olabilir. Arama motorları ilk user-agent ile son user-agent arasını bir yönerge olarak kabül eder.
Disallow
Arama motorlarının web sitemizdeki sayfa, dosya veya klasörlere erişmemesini isteyebiliriz. Buna Disallow denmekte. Yani erişilmemesi gereken yol.
robots.txt – disallow kuralı
User-agent: *
Disallow: /wp-admin/
Yukarıdaki örnekte, tüm arama motorlarına /wp-admin/ klasörüne erişmemeleri söylenmiştir.
Allow
Allow, Robot.txt dosyasında erişilmesi istenen sayfaları belirten komuttur. Dosya veya klasörler için kullanıcılır. Disallow talimatının tam tersidir. Allow talimatı Google ve Bing arama motorları tarafından kabul görür. Allow ve Disallow talimatlarını beraber kullanıp erişilmemesi gereken sayfaları ve izin verilen sayfaları belirtebilirsiniz.
Allow talimatından sonra mutlaka bir yol belirtilmelidir. Eğer yol belirtilmezse talimat arama motorları tarafından dikkate alınmaz.
Allow yönergesi bir Disallow yönergesini etkisiz hale getirmek için kullanılır. Allow komutu Google ve Bing tarafından desteklenmektedir. Allow ve disallow yönergelerini birlikte kullanarak arama motorlarına, izin verilmeyen bir dizindeki belirli bir dosya veya sayfaya erişebileceklerini söyleyebilirsiniz. Allow direktifini erişilebilen yol izler. Hiçbir yol tanımlanmazsa, yönerge dikkate alınmaz.
robots.txt allow kurali
User-agent: *
Allow: /dosya/eticaret.pdf
Disallow: /medya/
Yukarıdaki örnekte tüm arama motorlarının /dosya/eticaret.pdf dosyası dışında /dosya/ dizinine erişmesine izin verilmiyor.
Önemli: Allow ve Disallow yönergelerini beraber kullanırken, çakışan yönergelere yol açmamak için joker karakterler kullanmadığınızdan emin olun.
Çakışan talimat örnekleri
User-agent: *
Allow: /klasor
Disallow: *.html
Bu talimatta arama motorları https://www.siteadiniz.com/klasor.html url adresinde ne yapacağını tam anlayamayacaktır. Sayfa ve klasörlere erişim .zni olup olmadığı belli değil. Bu tarz durumlarda arama motorları en kısıtlayı talimatı uygulamaya geçirir. Bu durumda arama motorları https://www.siteadiniz.com/klasor.html url adresine erişebilecekleri anlamını çıkaracaktır.
Bir robots.xt dosyasında talimatların her biri ayrı ayrı satırlar halinde belirtilmelidir. Aksi halde arama motorları bunları ayrıştırmakta zorlanabilir. Örneğin aşağıdaki örnek gibi bir yapı kullanmayın.
Yanlış örnek:
User-agent: * Disallow: /klasor1 Disallow: /klasor2
Bir web sitesi için basit bir robots.txt dosyasının nasıl görünebileceğine bir örnek.
robots.txt örneği
User-agent: *
Disallow: /yonetim
Yukarıdaki örneğe göre bir robots.txt dosyasının yapısını açıklayalım:
User-agent: aşağıdaki yönergelerin hangi arama motorları için kullanıldığını belirtir.
*: Bu talimatların tüm arama motorları için olduğunu gösterir.
Disallow: kullanıcı aracısının hangi içeriğe erişemeyeceğini gösteren bir talimattır.
/yonetim/: bu, arama motorlarının erişmemesi gereken yol demektir.
Kısaca özetleyecek olursak: bu robots.txt dosyası, tüm arama motorlarına /yonetim/ klasöründen uzak durmasını, diğer kısımları ziyaret edebileceklerini söylüyor.
Robots.txt dosyasına sitemap ekleme
Robots.txt dosyası her ne kadar arama motorlarına hangi sayfaları ziyaret edebileceklerini söylemek için kullanılsa da aynı zamanda arama motorlarını sitemizin XML site haritalarına yönlendirmek içinde kullanılabilir. Bu şekilde kullanım Google, Bing, Yahoo ve Ask gibi arama motorları tarafından desteklenmektedir.
Bir XML site haritasının robots.txt dosyası ile aynı hosting de olması gerekmez. O yüzden XML site haritasına mutlak bir URL olarak eklenmelidir. XML site haritanızı Google Search Console veya Bing Web Yöneticisi Araçları‘na önceden göndermiş olsanız bile robots.txt dosyasında XML site haritasını referans göstermek gerekir.
Şunu aklınızdan çıkarmayın ki sitenizi sadece Googlebot ziyaret etmiyor diğer arama motorları botları da ziyaret ediyor. Onlara da yardımcı olmak gerekir.
Bir robots.txt dosyasında birden çok XML site haritasını referans göstermek mümkün.
XML site haritası doğru şekilde eklenmesi:
User-agent: *
Disallow:
Sitemap: https://www.siteadiniz.com/sitemap.xml
XML site haritası yanlış şekilde eklenmesi:
User-agent: *
Disallow:
Sitemap: /sitemap.xml
XML site haritasının doğru şekilde gösterilmesi ama engellenmiş olması örneği:
User-agent: *
Disallow: /
Sitemap: https://www.siteadiniz.com/sitemap.xml
Bu örnekte görüleceği üzere XML site haritasına doğru bir şekilde gösterilmiş, ama arama motorları Disallow: / yönergesi nedeniyle ona erişemeyecektir:
Robots.txt dosyası ne zaman kullanılır?
Robots.txt dosyası web sitemizi açıp sitemizin ziyaretçiler tarafından ziyaret edilebilecek hale getirdikten sonra hemen kullanılmalıdır. Sitemizi ziyaret uygun hale geldikten ilgili dosyayı oluşturup sitemizin ana dizinine eklemeliyiz. Eklenen bu dosya arama motorlarının sitemizi daha kolay ziyaret etmesini sağlayacaktır.
Her subdomain için ayrı bir robots.txt dosyası
Web siteleri bazen sub domain dediğimiz alt alan adı kullanabiliyor. E-ticaret sitelerinde bu daha çok blog bısmında kullanılıyor. Örneğin Net Mağaza firmasının ana domaini www.netmagaza.com ikin blog kısmı için www.blog.netmagaza.com alt alan adı kullanmayı tercih etmiş. Bu durumda ana domain ve alt alan adlarının hepsi için ayrı ayrı robots.txt dosyası oluşturmak gerekiyor.
Robots.txt dosyasını görüntüleme
Robots.txt dosyası bir kerede hazırlanır ve ana dizine eklenir. Sık sık değişiklik yapmak gerekmez. Ama değişiklik yaptıktan sonra web ortamında nasıl göründüğünü kontrol etmek gerekir. Tarayıcıya www.siteadiniz.com/roborts.txt yazıp enter tuşuna tıkladığınızda sitenize ait dosyayı görüntüleyebilirsiniz. Zaman zaman bu dosyayı kontrol etmekte fayda var. Bazen ana dizinden bazı dosyaları silerken farkında olmadan bu dosyada silinebiliyor.
Robots.txt örnekleri
Bu bölümde çeşitli robots.txt dosyası örneklerini aşağıda bulabilirsiniz..
Tüm robotların her şeye erişmesine izin verme
Arama motorlarının tüm dosyalara erişebileceklerini söylemenin bir çok yolu var. En çok kullanılan yol aşağıdaki gibidir.
User-agent: *
Disallow:
Robots.txt dosyasının boş bırakılması ya da hiç olmaması da aynı etkiyi yaratacaktır.
Tüm robotları her şey için engelleme
Bu örnekte robots.txt dosyasına, tüm arama motorlarının sitenin tamamına erişmemesini söyler.
User-agent: *
Disallow: /
Tüm Google botlarını engelleme
User-agent: googlebot
Disallow: /
Googlebot’a izin vermemenin tüm Googlebot’lar için geçerli olduğunu unutmayın. Buna haberler (googlebot-news) ve resimler (googlebot-images) arayan Google botları da dahildir.
Google-News harici tüm Google botlarını Engelleme
User-agent: googlebot
Disallow: /
User-agent: googlebot-news
Disallow:
Googlebot ve Slurp’u engelleme
User-agent: Slurp
User-agent: googlebot
Disallow: /
Tüm robotlar bu iki dizine giremez
User-agent: *
Disallow: /admin/
Disallow: /gizli/
WordPress için örnek Robots.txt dosyası
Burada Örnek olarak verdiğimiz robots.txt dosyası, WordPress için aşağıdaki varsayımlar göz önünde bulundurularak optimize edilmiştir:
- Yönetim bölümünün taranmasını istemezseniz.
- Dahili arama sonucu sayfalarınızın taranmasını istemezseniz.
- Etiketlerinizin ve yazar sayfalarınızın taranmasını istemezseniz.
- 404 sayfalarınızın taranmasını istemezseniz.
User-agent: *
Disallow: /wp-admin/ #admin panelinin taranması engellenir
Disallow: /wp-login.php #login sayfanızın taranması engellenir
Disallow: /search/ #site içi arama sonuç sayfalarının taranması engellenir
Disallow: ?s= #site içi arama sonuç sayfalarının taranması engellenir
Disallow: ?p= #kalıcı bağlantı hatası veren sayfaların taranması engellenir
Disallow: &p= #kalıcı bağlantı hatası veren sayfaların taranması engellenir
Disallow: &preview= #önizleme sayfalarının taranması engellenir
Disallow: /tag/ #etiket sayfalarının taranması engellenir
Disallow: /author/ #yazar sayfalarının taranması engellenir
Disallow: /404-error/ #404 döndüren sayfaların taranması engellenir
Sitemap: https://www.siteadiniz.com/sitemap_index.xml
Burada örnek olarak verdiğimiz robots.txt dosyasının çoğu durumda çalışacağını, yapmış olduğunuz bazı ayarların farklı olabileceğini göz önünde bulundurarak çalışıp çalışmadığını kontrol edin. Kontrol işleminin nasıl yapıldığını yukarıda anlatmıştık.
Bu makalemizde robots.txt nedir, nasıl oluşturulur sorusuna cevap vermeye çalıştık. Sizinde robots.txt nedir sorusu ile ilgili sormak istediğiniz soru olursa aşağıdaki yorum bölümünden bize sorabilirsiniz.