- Konu sahibi
- #1
Robots.txt Disallow kuralı
Disallow kuralı, arama motoru tarayıcılarına belirli bir URL yolunu taramamalarını söyleyen robots.txt yönergesidir. Örneğin Disallow: /admin/ kuralı, ilgili kullanıcı aracısı için /admin/ yolu ve altındaki URL'lerin taranmasını engeller. Ancak bu kural bir güvenlik duvarı değildir ve bir sayfanın Google sonuçlarında kesinlikle görünmesini garantiyle engellemez. Arama sonuçlarından kaldırma amacı varsa erişimi parola ile korumak veya sayfaya erişime izin vererek noindex kullanmak gerekir.Disallow kuralı nasıl çalışır?
robots.txt dosyası alan adının kök dizininde, yani
https://example.com/robots.txt adresinde bulunur. Kurallar User-agent grupları altında yazılır. User-agent: * tüm uyumlu tarayıcıları hedefler. Disallow sonrasındaki yol, alan adının kökünden itibaren değerlendirilir ve büyük-küçük harfe duyarlıdır.Örnek olarak şu dosya yalnızca
/admin/ ve /arama yolu ile başlayan adresleri engeller:
Kod:
User-agent: *
Disallow: /admin/
Disallow: /arama
Sitemap: https://example.com/sitemap.xml
Bu örnekte
/admin/rapor.html taranmaz. /admin-panel/ ise /admin/ ile aynı yol olmadığı için bu kuralla engellenmez. Yalnızca tek bir dizini engellemek istiyorsanız dizinin sonuna eğik çizgi eklemek kapsamı daha net hale getirir.Uygulanabilir kurulum ve kontrol adımları
- Sitenizin kök dizininde
robots.txtadlı düz metin dosyası oluşturun veya mevcut dosyayı açın. Dosya adınırobots.txt.txtyapmayın. - Hedef tarayıcıyı
User-agent: *ile belirleyin ve engellenecek yoluDisallow: /ornek-yol/biçiminde ayrı satıra yazın. - Dosyayı alan adının kök dizinine yükleyin. Dosyanın alt klasörde, örneğin
/seo/robots.txtkonumunda olması sitenin genel robots.txt dosyası olarak kullanılmaz. - Tarayıcıda
https://example.com/robots.txtadresini açarak dosyanın erişilebilir olduğunu ve sunucunun başarılı bir yanıt verdiğini kontrol edin. - Engellenmesini istemediğiniz bir adresi URL Denetleme aracı veya uyumlu bir robots.txt test aracıyla kontrol edin. Sonuçta ilgili yolun
Disallowkuralıyla eşleşmediğini görmelisiniz. - Beklenen sonuç alınmıyorsa önce dosyanın doğru alan adında, doğru protokolde ve kök dizinde olduğunu; ardından yolun başındaki
/, klasör sonundaki eğik çizgi ve büyük-küçük harf kullanımını kontrol edin.
Başarılı kontrolde tarayıcı, eşleşen URL'yi robots.txt kuralına göre istemez. Dosya bulunamıyor, yanlış yerdeyse veya kural yolu hedef URL ile eşleşmiyorsa engelleme gerçekleşmez. robots.txt değişikliğinin uygulanma zamanı tarayıcının dosyayı yeniden okumasına bağlıdır; bu nedenle yalnızca dosyayı değiştirmek, mevcut arama sonucu görünümünü anında değiştirmez.
Hangi amaç için hangi yöntemi kullanmalı?
Disallow kararını verirken hedefinizin taramayı azaltmak mı, yoksa içeriği arama sonuçlarından kaldırmak mı olduğunu ayırın.
| Amaç | Uygun yöntem | Önemli sonuç |
|---|---|---|
| Gereksiz URL'lerin taranmasını azaltmak | robots.txt içinde Disallow | Tarayıcı içeriği okumayabilir |
| Sayfanın arama sonuçlarında görünmesini önlemek | Erişime açık sayfada noindex | Tarayıcı noindex yönergesini okuyabilir |
| Özel veya gizli veriyi korumak | Parola, yetkilendirme veya sunucu erişim kuralı | robots.txt güvenlik yöntemi değildir |
| Belirli dosya türlerini sonuçlardan kaldırmak | Uygun durumda X-Robots-Tag veya erişim kısıtlaması | Dosyanın taranabilmesi gerekebilir |
Sık yapılan hatalar
Tüm siteyi yanlışlıkla kapatmak en kritik hatalardandır. Ayrı satırlarda
User-agent: * ve Disallow: / yazmak, bu gruba uyan tarayıcıların tüm yolları taramasını engeller. Bir başka hata, robots.txt ile gizli bilgileri korumaya çalışmaktır. Dosyanın kendisi herkese açık olduğundan engellenen klasör adlarını da görünür hale getirebilir.Ayrıca
Disallow: /urun ile yalnızca /urun sayfasını değil, bu metinle başlayan farklı yolları da etkileyebilecek eşleşmeler oluşturabilirsiniz. Google’ın desteklediği eşleştirmede yalnız tam URL yolunu hedeflemek istiyorsanız sonu $ ile sabitleyin; örneğin Disallow: /kampanya-eski.html$. noindex kullanmanız gerekiyorsa aynı sayfayı robots.txt ile engellemeyin; aksi halde tarayıcı sayfaya erişip noindex yönergesini okuyamaz.Sık sorulan sorular
Allow ve Disallow aynı URL’ye uyarsa hangisi geçerlidir?
Google eşleşen yolun daha özgül, yani daha uzun kuralını kullanır. Eşdeğer özgüllükte bir Allow ve Disallow çatışırsa izin veren kural geçerlidir. Kural sırasını değiştirmenin tek başına çözüm olacağını varsaymayın.
Boş Disallow satırı ne anlama gelir?
User-agent: * altında Disallow: yazılması, bu grup için engellenmiş bir yol tanımlanmadığını ifade eder. Bu satır tek başına tüm siteyi engellemez; bu boş kural dikkate alınmaz. Aynı gruptaki diğer kurallar veya tarayıcıya daha özel bir grup ayrıca değerlendirilir.Disallow kuralı CSS ve JavaScript dosyalarını da etkiler mi?
Evet. Eşleşen kaynaklar taranamazsa arama motoru sayfanın görünümünü veya işlevini tam değerlendiremeyebilir. Sayfanın anlaşılması için gerekli kaynakları gereksiz yere engellemeden yalnızca gerçekten taranmasını istemediğiniz yolları hedefleyin.