Robots.txt Joker Karakter Kullanımı: * ve $ ile Doğru Kural Nasıl Yazılır?

Kısa cevap
Robots.txt joker karakter nedir ve hangi karakterleri destekler?
Robots.txt joker karakter, tek bir kuralla birden çok URL yolunu eşlemenizi sağlayan özel işarettir. Google iki joker karakter tanır: yıldız (*) sıfır veya daha fazla karakterin yerini tutar, dolar ($) ise URL'nin sonunu işaretler. Başka bir düzenli ifade sözdizimini Google desteklemez.
Bu rehberde Talha Aslan ve ekibi olarak sahada en çok karıştırılan konuyu adım adım açıyoruz: robots.txt joker karakter kullanımı, kuralların hangi sırayla kazandığı ve hatalı kalıpların doğru karşılıkları. Kuralları elle yazmak yerine hazır bir şablonla başlamak isterseniz ücretsiz robots.txt oluşturucu aracımızı açık tutarak okuyabilirsiniz. Böylece her örneği anında kendi dosyanıza aktarırsınız. Rehberin sonunda hazır bir şablon ve test adımları da bulacaksınız.
Dosyanın temelini henüz bilmiyorsanız önce robots.txt nedir ve nasıl oluşturulur yazımıza göz atın. Burada temeli tekrar anlatmıyoruz; yalnızca kalıp eşleme mantığına odaklanıyoruz.
Yıldız (*) karakteri tam olarak neyi eşler?
Yıldız, bulunduğu yere "burada herhangi bir şey olabilir" anlamı katar. Yani sıfır karakter de olabilir, yüzlerce karakter de. Örneğin Disallow: /*.pdf satırı yolun herhangi bir yerinde ".pdf" geçen her adresi kapsar. Bu nedenle yıldızı kısa ama geniş etkili bir araç olarak düşünün.
Google belgesindeki önemli bir ayrıntı şudur: kuralın sonundaki yıldız etkisizdir. /fish* kuralı ile /fish kuralı aynı şeyi eşler, çünkü robots.txt yolları zaten önek (başlangıç) eşlemesiyle çalışır. Dolayısıyla sona eklediğiniz yıldız zarar vermez ama bir şey de katmaz.
Disallow: /*?: soru işareti içeren, yani parametreli tüm adresleri tarama dışı bırakır.Disallow: /urun/*/yorum: /urun/ altındaki herhangi bir alt yolda "/yorum" geçen adresleri engeller.- Üçüncü örnek olarak
Disallow: /*sepet: yolun herhangi bir yerinde "sepet" kelimesi geçen adresleri kapatır; /sepetim ve /urun/sepete-ekle de buna dahildir.
Son örnek, yıldızın ne kadar geniş davrandığını gösterir. Örneğin sepet kelimesini içeren bir blog yazınız varsa, o yazı da tarama dışında kalır. Ancak bu genişlik hem avantaj hem risktir; birazdan hatalı kalıplar bölümünde buna döneceğiz.
Dolar ($) karakteri robots.txt kuralını nasıl sınırlar?
Dolar işareti eşlemeyi URL'nin sonuna kilitler. Örneğin Disallow: /*.pdf$ yalnızca ".pdf" ile biten adresleri engeller. Öte yandan /rapor.pdf?indir=1 gibi sonunda parametre olan bir adres bu kurala takılmaz, çünkü URL ".pdf" ile değil parametreyle biter.
Google belgesindeki örnek de aynı mantığı izler: /*.php$ kuralı /folder/filename.php adresini eşler, ancak /filename.php?parameters ya da /filename.php/ adreslerini eşlemez. Kısacası dolar, "tam burada bitsin" demektir. Bu yüzden parametreli sürümleri de kapatmak istiyorsanız doları kullanmayın ya da ek bir satır yazın.
Disallow: /*.xls$: yalnızca .xls uzantısıyla biten dosyaları engeller.Allow: /$: yalnızca ana sayfanın kendisini (kök adres) kapsar, alt sayfaları kapsamaz.Disallow: /arama$: sadece tam /arama adresini engeller; /arama?q=ayakkabi adresini engellemez.
Robots.txt kurallarında hangi kural kazanır?
Google, bir URL'ye uyan birden fazla kural bulduğunda en özgül olanı uygular. Özgüllüğü kural yolunun uzunluğuyla ölçer. Bu nedenle daha uzun yol, kısa yolu yener. Örneğin Allow: /blog/ozel/ ile Disallow: /blog/ birlikteyse /blog/ozel/ altındaki sayfalar taranabilir kalır.
Joker karakter içeren kurallarda da aynı uzunluk hesabı geçerlidir. Google belgesindeki örnekte /page.htm adresi için allow: /page ve disallow: /*.htm kuralları yarışır. Disallow kuralı daha uzun olduğu için kazanır ve sayfa taranmaz. Yani yıldız, kuralı otomatik olarak zayıf ya da güçlü yapmaz; uzunluk belirler.
Bu kural, sahada en çok yanlış anlaşılan konulardan biridir. Çoğu kişi Disallow satırının her zaman önce geldiğini düşünür. Peki iki kural aynı uzunluktaysa ne olur? Google bu durumda en az kısıtlayıcı kuralı, yani Allow kuralını seçer. Örneğin Allow: /klasor ve Disallow: /klasor birlikte yazılmışsa /klasor taranabilir kalır.
Allow ve Disallow çatışmasını nasıl çözersiniz?
Çatışmayı çözmenin en güvenli yolu, istisnayı her zaman daha uzun ve daha özgül bir yol ile yazmaktır. Böylece sonuç, satırların sırasına değil açık bir uzunluk farkına dayanır. Ayrıca Google için satır sırası belirleyici değildir; dosyanın başına ya da sonuna yazmanız sonucu değiştirmez.
- Önce genel engeli yazın, örneğin
Disallow: /hesap/. - Ardından açık kalması gereken alt yolu daha uzun bir Allow kuralıyla ekleyin, örneğin
Allow: /hesap/yardim/. - Son olarak her iki yolu da test adresleriyle tek tek deneyin ve hangisinin kazandığını not edin.
Örnek senaryo: bir e-ticaret sitesi tüm /*? adreslerini kapatmak istiyor, ancak sayfalama parametresini açık bırakmak istiyor. Allow: /*?sayfa= kuralı Disallow: /*? kuralından uzun olduğu için ?sayfa= ile başlayan parametreli adresler açık kalır. Öte yandan ?renk=kirmizi&sayfa=2 gibi sayfa parametresi ikinci sırada olan adresler bu Allow kuralına uymaz.
Robots.txt yolları büyük küçük harfe duyarlı mı?
Evet, yollar büyük küçük harfe duyarlıdır. Google belgesine göre /fish kuralı /Fish.asp adresini eşlemez. Bu nedenle sitenizde hem /Urunler hem /urunler varsa, iki ayrı kural yazmanız gerekir. Aksi halde biri açık kalır.
Öte yandan User-agent satırındaki bot adı büyük küçük harfe duyarlı değildir. Yani User-agent: googlebot ile User-agent: Googlebot aynı botu hedefler. Ayrıca alan adları (Disallow, Allow gibi) de duyarsızdır; yine de okunabilirlik için ilk harfi büyük yazmanızı öneririz.
- Yol değerleri duyarlıdır: /PDF/ ile /pdf/ farklı klasördür.
- Bot adları duyarsızdır: bingbot ile Bingbot aynıdır.
- Dosya uzantılarında da duyarlılık geçerlidir:
/*.PDF$kuralı küçük harfli .pdf dosyalarını kapsamaz.
Parametreli URL'leri robots.txt joker karakter ile nasıl engellersiniz?
Parametreli adresler, tarama bütçesini en çok tüketen kaynaklardan biridir. Filtre, sıralama ve oturum parametreleri aynı içeriğin yüzlerce kopyasını üretir. Bu yüzden robots.txt joker karakter kalıpları burada en çok işe yarar. Konunun kanonik ve filtre tarafını faceted navigation rehberimizde ayrıca ele aldık.
Disallow: /*?: soru işareti içeren tüm adresleri engeller. En geniş ve en riskli seçenektir.Disallow: /*?siralama=: yalnızca ilk parametresi siralama olan adresleri engeller.- İkinci sıradaki parametre için
Disallow: /*&siralama=: siralama parametresi ikinci ya da sonraki sırada geldiğinde devreye girer. - Oturum için
Disallow: /*sessionid=: oturum kimliği taşıyan adresleri, parametre sırası ne olursa olsun kapatır.
Dikkat edin, tek bir parametreyi tam olarak hedeflemek için genellikle iki satır gerekir: biri ? ile, biri & ile. Çünkü parametre adresin ilk parametresi olduğunda soru işaretinden, sonraki parametre olduğunda ve işaretinden sonra gelir.
Belirli dosya türlerini (.pdf, .doc) nasıl engellersiniz?
Dosya türü engellemek için yıldız ve doları birlikte kullanırsınız. Böylece yalnızca o uzantıyla biten adresler hedefe girer. Örneğin Disallow: /*.pdf$ sitedeki tüm PDF dosyalarının taranmasını durdurur, ama adında "pdf" geçen bir blog yazısını etkilemez.
Disallow: /*.pdf$: .pdf ile biten tüm adresleri engeller.- Klasörle sınırlı hali
Disallow: /belgeler/*.docx$: yalnızca /belgeler/ klasöründeki .docx dosyalarını engeller. - Dikkat:
Disallow: /*.pdf: dolar olmadan yazılırsa /pdf-rehberi-indir gibi adresleri de yakalayabilir; bu genellikle istenmeyen sonuçtur.
Ancak şunu unutmayın: robots.txt taramayı durdurur, dizinden çıkarmayı garanti etmez. Başka sitelerden link alan bir PDF, içeriği okunmadan da arama sonuçlarında görünebilir. Bir dosyanın dizinden tamamen çıkmasını istiyorsanız X-Robots-Tag başlığı ya da noindex daha doğru araçtır; farkları noindex, nofollow ve robots.txt karşılaştırmamızda anlattık.
User-agent grupları kuralları nasıl ayırır?
Robots.txt dosyası gruplardan oluşur. Her grup bir ya da daha fazla User-agent satırıyla başlar ve altındaki Allow ile Disallow satırları o gruba aittir. Bir tarayıcı dosyayı okuduğunda yalnızca kendisine en özgül şekilde uyan tek grubu uygular. Bu nedenle gruplar birbirine eklenmez.
Google belgesi bu noktada açıktır: bota özel gruplar ile genel (*) grup birleştirilmez. Örneğin Googlebot için ayrı bir grup yazdıysanız, Googlebot genel gruptaki kuralları tamamen yok sayar. Dolayısıyla genel gruptaki önemli engelleri, bota özel gruba da kopyalamanız gerekir.
Öte yandan aynı bot için dosyada birden çok grup varsa, Google bunları tek grupta birleştirir. Yine de bakımı kolaylaştırmak için her botu tek bir grupta toplamanızı öneririz. Örneğin dosyanın başında genel grubu, ardından bota özel grupları sırayla yazmak okunabilirliği belirgin biçimde artırır.
Belirli bir botu hedeflemek için hangi kalıbı kullanırsınız?
Belirli bir botu hedeflemek için o botun belgelerinde yayımlanan ürün belirtecini User-agent satırına yazarsınız. Ardından yalnızca o bota uygulanacak kuralları altına eklersiniz. Örneğin görsel tarayıcısını bir klasörden uzak tutmak için ayrı bir grup açabilirsiniz.
User-agent: Googlebot-Imageve altındaDisallow: /ozel-gorseller/: yalnızca Google görsel tarayıcısını bu klasörden uzak tutar; Googlebot'un web taramasını etkilemez.- Genel grup için
User-agent: *ve altındaDisallow: /yonetim/: kendine ait grubu olmayan tüm botlar için yönetim klasörünü kapatır. User-agent: Googlebotile başlayan ayrı bir grup: Googlebot genel grubu artık okumaz, kendi grubunu okur.
Yapay zeka tarayıcılarını (GPTBot, ClaudeBot gibi) hedeflemek de aynı mantıkla çalışır. Bu botların adlarını ve dikkat edilmesi gereken noktaları AI crawler nedir rehberimizde ayrıntılı anlattık. Bot adlarını her zaman sağlayıcının güncel resmi sayfasından kontrol edin.
Robots.txt joker karakter kullanırken en sık hangi hatalar yapılıyor?
Sahada gördüğümüz hataların çoğu, kalıbın beklenenden geniş ya da dar çalışmasından kaynaklanır. Aşağıdaki tablo yaygın hatalı kalıpları, neden sorun çıkardıklarını ve doğru karşılıklarını özetler. Daha genel dosya hataları için en sık yapılan robots.txt hataları yazımıza da bakabilirsiniz.
| Hatalı kalıp | Ne olur? | Doğru karşılık |
|---|---|---|
Disallow: *.pdf | Yol / ile başlamaz; kural güvenilir biçimde çalışmayabilir. | Doğrusu: Disallow: /*.pdf$ |
Disallow: /*.pdf | Adında pdf geçen sayfaları da engelleyebilir. | Doğrusu: Disallow: /*.pdf$ |
Disallow: /*sepet* | Sondaki yıldız gereksizdir; kural yine de geniş çalışır. | Bunun yerine: Disallow: /sepet/ |
Disallow: /arama$ | Yalnızca tam /arama adresini engeller, parametreli aramalar açık kalır. | Daha iyisi: Disallow: /arama |
Disallow: /Urunler/ | Küçük harfli /urunler/ klasörü açık kalır. | Her yazım için ayrı satır |
Disallow: / (Googlebot grubunda) | Tüm siteyi Googlebot'a kapatır. | Yalnızca gerçekten kapanacak klasörleri yazın |
Disallow: /*?siralama= tek başına | Parametre ikinci sıradaysa engel çalışmaz. | ? ve & için iki satır |
Tablodaki ilk satır özellikle önemlidir. Google belgesine göre yol değerleri / ile başlamalıdır. Bu nedenle kuralı her zaman eğik çizgiyle açın, ardından yıldızı ekleyin.
Joker karakter CSS ve JavaScript dosyalarını yanlışlıkla engeller mi?
Evet, dikkatsiz bir kalıp bunu kolayca yapar. Örneğin Disallow: /*? kuralı, sürüm parametresi taşıyan stil.css?ver=3 gibi dosyaları da kapatır. Bu durumda Google sayfayı doğru görüntüleyemeyebilir. Dolayısıyla sayfanın görünümü ve mobil uyumluluğu yanlış değerlendirilebilir.
Çözüm basittir: genel engelin yanına daha uzun Allow kuralları ekleyin. Örneğin Allow: /*.css$ ve Allow: /*.js$ sürüm parametresi olmayan dosyaları açar. Parametreli dosyalar için ise Allow: /*.css? ve Allow: /*.js? satırlarını eklersiniz. Bu satırlar Disallow: /*? kuralından uzun olduğu için kazanır.
WordPress kullanıyorsanız tema ve eklenti dosyalarının nerede durduğu önemlidir. Bu ayrıntıları kardeş yazımız WordPress robots.txt nasıl olmalı rehberinde ele aldık.
Robots.txt kuralını uygulamaya almadan önce nasıl test edersiniz?
Bir joker karakter kalıbını canlıya almadan önce test etmek, sonradan trafik kaybını açıklamaya çalışmaktan çok daha ucuzdur. Aşağıdaki adımları ekibimiz her robots.txt değişikliğinde uygular. Siz de aynı sırayı izleyebilirsiniz.
- Engellemek istediğiniz 5 ile 10 örnek adresi ve kesinlikle açık kalması gereken 5 ile 10 adresi bir listeye yazın.
- Kuralları robots.txt oluşturucu aracımızla taslak olarak hazırlayın ve User-agent gruplarını ayrı ayrı kontrol edin.
- Her test adresi için hangi kuralın eşleştiğini ve yol uzunluğunu elle hesaplayın; uzun olan kazanır, eşitlikte Allow kazanır.
- Dosyayı sitenin kök dizinine UTF-8 düz metin olarak yükleyin; alt klasörde duran dosyayı tarayıcılar okumaz.
- Search Console'daki robots.txt raporundan Google'ın dosyayı başarıyla aldığını ve hata göstermediğini doğrulayın.
- Birkaç gün sonra tarama istatistiklerini ve dizin raporlarını kontrol edin; beklenmedik bir düşüş varsa kuralı geri alın.
Google, robots.txt dosyasının yerleşimi ve kodlamasıyla ilgili ayrıntıları robots.txt oluşturma rehberinde yayımlar. Ayrıca kural eşleme mantığının tamamı Google'ın robots.txt yorumlama belgesinde yer alır.
Kural sırası robots.txt dosyasında önemli mi?
Google için hayır. Google, satırların dosyadaki sırasına bakmaz; uzunluğa ve kısıtlayıcılık durumuna bakar. Yani Allow kuralını Disallow kuralının üstüne ya da altına yazmanız sonucu değiştirmez. Bu da düzenli bir dosya yazmanıza alan açar.
Ancak her tarayıcı aynı şekilde davranmayabilir. Bazı eski ya da basit tarayıcılar ilk eşleşen kuralı uygulayabilir. Bu nedenle pratik bir alışkanlık öneriyoruz: istisna niteliğindeki Allow satırlarını, ilgili Disallow satırının hemen üstüne yazın. Böylece hem Google hem de sıraya bakan tarayıcılar aynı sonuca ulaşır.
Robots.txt joker karakter kalıpları tarama bütçesini nasıl etkiler?
Doğru yazılmış kalıplar, Googlebot'un değersiz parametre kopyalarına harcadığı istekleri azaltır. Böylece önemli sayfalar daha düzenli taranır. Özellikle binlerce filtre kombinasyonu üreten e-ticaret sitelerinde etkisi belirgindir.
Öte yandan aşırı geniş bir kalıp, önemli sayfaları da tarama dışı bırakabilir. Tarama sıklığında beklenmedik bir düşüş görüyorsanız sebebi bazen tek bir yıldızdır. Bu tür düşüşleri incelemek için Googlebot neden daha az tarar yazımızdaki kontrol listesini kullanabilirsiniz.
- Önce Search Console tarama istatistiklerinde en çok istek alan URL kalıplarını bulun.
- Ardından bu kalıpların gerçekten değersiz kopyalar olup olmadığını teyit edin.
- Son olarak yalnızca teyit ettiğiniz kalıpları dar ve özgül kurallarla kapatın.
Sitemap satırı joker karakter kabul eder mi?
Hayır. Bu soru sık gelir, çünkü joker karakterlere alışan kişi onları her satırda kullanmak ister. Google belgesine göre yıldız joker karakteri sitemap dışındaki tüm kurallarda çalışır. Sitemap satırı tam ve geçerli bir URL ister, örneğin Sitemap: https://example.com/sitemap.xml. Ayrıca bu satır herhangi bir User-agent grubuna bağlı değildir; dosyanın herhangi bir yerinde durabilir.
Birden fazla site haritanız varsa her biri için ayrı bir Sitemap satırı yazarsınız. Site haritanızı sıfırdan hazırlamanız gerekiyorsa XML sitemap oluşturucu aracımız bu işi birkaç dakikaya indirir.
Hazır robots.txt joker karakter şablonları nasıl görünür?
Aşağıdaki örnek, tipik bir e-ticaret sitesi için mantıklı bir başlangıç gösterir. Her satırın yanında ne yaptığını yazdık. Ancak bu bir örnek senaryodur; kendi URL yapınıza göre uyarlamadan kopyalamayın.
User-agent: *: kendine özel grubu olmayan tüm botlar bu grubu okur.Disallow: /sepet/: sepet sayfalarını tarama dışı bırakır.- Üye alanı için
Disallow: /hesap/: üye hesap alanını kapatır. Disallow: /*?siralama=veDisallow: /*&siralama=: sıralama parametresini her konumda engeller.- Dosya türü için
Disallow: /*.pdf$: .pdf ile biten dosyaları engeller. Allow: /*.css$veAllow: /*.js$: stil ve betik dosyalarını açık tutar.Sitemap: https://example.com/sitemap.xml: site haritasının tam adresini bildirir.
Kısacası iyi bir şablon kısa, okunabilir ve test edilmiş olmalıdır. Uzun ve karmaşık bir dosya, hata ayıklamayı zorlaştırır. Ayrıca her satırı bir test adresiyle eşleştirmek, ileride yapacağınız değişikliklerde size zaman kazandırır. Örneğin yeni bir filtre eklediğinizde yalnızca ilgili satırı güncellersiniz.
Robots.txt dosyasının boyut sınırı var mı?
Evet. Google robots.txt dosyası için 500 KiB sınır uygular ve bu sınırdan sonra gelen içeriği yok sayar. Yani binlerce ayrı satırla her URL'yi tek tek engellemeye çalışan bir dosya, sınırı aşabilir. Böylece dosyanın sonundaki kurallar hiç uygulanmaz.
Joker karakterler tam da bu yüzden değerlidir. Örneğin yüzlerce filtre adresini tek tek yazmak yerine Disallow: /*?filtre= gibi tek bir satır kullanırsınız. Böylece dosya hem kısa kalır hem de bakımı kolaylaşır. Güncel sınırı yine de resmi belgeden kontrol edin.
Klasör sonundaki eğik çizgi kuralı nasıl değiştirir?
Eğik çizgi küçük görünür ama eşlemeyi ciddi biçimde değiştirir. Google belgesindeki örneğe göre /fish/ kuralı /fish/salmon.htm adresini eşler, ancak /fish adresini eşlemez. Çünkü kural, yolun "/fish/" ile başlamasını ister.
Öte yandan sondaki çizgiyi kaldırırsanız kural çok daha geniş çalışır. Örneğin Disallow: /blog satırı /blog/ klasörünü, /blog.html dosyasını ve hatta /blogcu-rehberi adresini de kapatır. Dolayısıyla klasör engellerken çizgiyi bilinçli olarak eklemeniz gerekir.
- Klasörün tamamını kapatmak için
Disallow: /blog/yazın; klasör adresinin kendisi de buna dahildir. - Klasör ile aynı harflerle başlayan sayfaları da kapatmak istiyorsanız çizgisiz
Disallow: /blogkullanın. - Yalnızca tek bir sayfayı hedeflemek için dolarla sınırlayın:
Disallow: /blog$.
Kısacası her kuralı yazdıktan sonra "bu ön ek başka hangi adresi yakalar?" diye sorun. Bu soru, sahada gördüğümüz hataların büyük kısmını önler.
Joker karakter Türkçe karakterli ve kodlanmış URL'lerde nasıl çalışır?
Tarayıcılar URL yollarını karşılaştırırken genellikle yüzde kodlamalı (percent encoding) biçimi esas alır. Yani adresinizde ç, ş ya da ğ gibi harfler varsa, sunucuya giden yol aslında %C3%A7 gibi kodlanmış bir dizidir. Bu nedenle kuralı yazarken iki biçimi de düşünmeniz gerekir.
Google, robots.txt dosyasının UTF-8 kodlamalı düz metin olmasını ister ve UTF-8 dışındaki karakterleri yok sayabilir. Böylece yanlış kodlanmış bir satır, fark etmeden geçersiz hale gelebilir. Dolayısıyla Türkçe karakterli klasör adlarını kurallarda kullanmak yerine slug yapınızı baştan Latin harfleriyle kurmanızı öneririz.
- Kural yazmadan önce tarayıcının adres çubuğundaki yolu kopyalayın ve kodlanmış halini kontrol edin.
- Türkçe karakter içeren yollar için hem kodlu hem kodsuz biçimi test listenize ekleyin.
- Yeni sayfalarda slug kuralını en baştan Türkçe karaktersiz belirleyin; bu, robots.txt bakımını da kolaylaştırır.
Robots.txt joker karakter kuralları alt alan adlarını kapsar mı?
Hayır. Her robots.txt dosyası yalnızca bulunduğu ana bilgisayar (host), protokol ve bağlantı noktası için geçerlidir. Örneğin example.com/robots.txt dosyası, magaza.example.com alt alan adını etkilemez. Bu nedenle her alt alan adı için ayrı bir dosya hazırlarsınız.
Ayrıca HTTP ve HTTPS sürümleri de teknik olarak ayrı kabul edilir. Pratikte siteniz tek bir sürüme yönlendiriyorsa asıl dosya o sürümde durmalıdır. Öte yandan bir hazırlık (staging) alt alanı kullanıyorsanız, orada genellikle tüm siteyi kapatan ayrı ve daha katı bir dosya tutarsınız. Ancak yayına geçerken o katı dosyanın canlı siteye taşınmadığından emin olun; bu, en pahalı hatalardan biridir.
Joker karakter kuralını elle nasıl hesaplarsınız?
Bir adresin hangi kurala takıldığını tahmin etmek yerine küçük bir hesap yapabilirsiniz. Önce adrese uyan tüm kuralları listelersiniz. Ardından her kuralın yol uzunluğunu karakter olarak sayarsınız. En uzun olan kazanır; eşitlik varsa Allow kazanır.
- Adresi yazın, örneğin /urunler/ayakkabi?renk=siyah.
- Uyan kuralları bulun:
Disallow: /*?(3 karakter) veAllow: /urunler/(10 karakter). - Uzunlukları karşılaştırın: Allow kuralı daha uzun olduğu için kazanır ve adres taranabilir kalır.
- Sonucu beklentinizle karşılaştırın; beklenmedik bir sonuç varsa daha uzun bir Disallow kuralı ekleyin, örneğin
Disallow: /urunler/*?.
Bu örnek hesap, joker karakterin neden tek başına yetmediğini gösterir. Genel /*? engeli kısa olduğu için klasör bazlı Allow kurallarına kolayca yenilir. Dolayısıyla izin verdiğiniz klasörlerde parametreleri de kapatmak istiyorsanız, klasöre özel ve daha uzun bir Disallow yazmanız gerekir.
Robots.txt değişikliklerini ekip içinde nasıl yönetirsiniz?
Robots.txt dosyası küçük bir metin dosyasıdır, ancak tek bir satır tüm sitenin görünürlüğünü etkileyebilir. Bu nedenle dosyayı herkesin rastgele düzenlediği bir yer olmaktan çıkarmanızı öneririz. Ekibimizde her değişiklik bir not ve tarih ile kayda geçer.
- Her değişiklikten önce mevcut dosyanın bir kopyasını tarihli olarak saklayın.
- Değişikliği kimin, hangi sebeple yaptığını kısa bir notla belgeleyin.
- Joker karakter içeren her yeni satırın yanına, hangi URL grubunu hedeflediğini yorum satırıyla yazın; robots.txt dosyasında diyez (#) ile başlayan satırlar yorum kabul edilir.
- Yayına alma, tema güncellemesi ya da altyapı taşıması sonrasında dosyayı mutlaka yeniden kontrol edin.
Örneğin bir site taşıması sırasında hazırlık ortamındaki "tüm siteyi kapat" dosyası canlıya geçebilir. Böyle bir durumda tarama hızla düşer ve sorun ancak trafik kaybıyla fark edilir. Dolayısıyla yayın kontrol listenize robots.txt adımını eklemek, en ucuz sigortalardan biridir. Ayrıca yorum satırları, aylar sonra dosyayı açan bir ekip arkadaşının hangi kuralın neden orada olduğunu anlamasını kolaylaştırır.
Robots.txt ne zaman yetmez, ne zaman profesyonel destek alırsınız?
Robots.txt yalnızca taramayı yönetir. Dizin şişmesi, yinelenen içerik ya da yanlış kanonik sinyalleri gibi sorunlar genellikle birden çok aracın birlikte kullanılmasını gerektirir. Örneğin parametre sorunları çoğu zaman robots.txt, kanonik etiket ve iç link düzenini birlikte ele almayı ister.
Siteniz büyükse ya da bir robots.txt değişikliği sonrası trafik kaybı yaşadıysanız, SEO danışmanlığı kapsamında teknik denetimle birlikte bu dosyayı da inceliyoruz. Ancak küçük ve orta ölçekli sitelerin çoğu, bu rehberdeki kurallarla kendi dosyasını güvenle yazabilir.
Temel rehber: Dijital Pazarlama Nedir? Türleri, örnekleri ve nasıl yapıldığı, beynin içinden geçen etkileşimli bir filmle tek sayfada.



