Sizin hiçbir panelinizde görünmeyen bir arıza türü var. Siteniz ayakta, çalışma süresi izleyiciniz yeşil, her insan ziyaretçi sayfayı alıyor — ama sizi soran bir yapay zekâ asistanı 403 alıyor ve karşısındaki kişiye sitenize ulaşılamadığını söylüyor. Bu hiçbir yere hata olarak düşmüyor, çünkü kenar ağı açısından bakıldığında tam olarak kendisine söyleneni yaptı.

Bunun ne sıklıkta olduğunu sayıyla söyleyebiliyoruz, çünkü biz de bu duvara çarptık. 293 tanınmış halka açık web sitesini her birine tek bir düz HTTP isteği göndererek taradığımızda, 45 of 293 (15%) tanesi isteği doğrudan reddetti — yavaş sayfa değil, zayıf sayfa değil; hiç sayfa yok.

15%293 tanınmış siteden, tanımadığı bir istemciden gelen düz HTTP isteğini reddedenlerin oranı

Bu sayı bir tavan değil, taban. Yalnızca doğrudan reddedilenleri sayıyor. Onay duvarı, ara sayfa ya da giriş kapısıyla cevap veren 72 of 293 (25%) siteyi saymıyor — yani HTTP 200 döndürüp kimsenin kullanamayacağı bir içerik veren sayfaları.

Bu neden neredeyse her zaman bir kaza?

Neredeyse hiç kimse oturup yapay zekâ cevaplarının dışında kalmaya karar vermiyor. Bunun yerine şu dört şeyden biri oluyor ve dördü de karar değil, varsayılan.

  1. Hazır bir bot koruma kuralı açıldı. CDN ve WAF ürünlerinin çoğu artık tek düğmeyle engellenebilen "yapay zekâ botları" gibi bir kategori sunuyor. O kategori bir paket: insanların engellemek istediği eğitim tarayıcılarını da, içinde olduğunu bilmedikleri cevap motorlarını da birlikte taşıyor.
  2. İşi hız sınırı yapıyor. Asistanlar, birisi sitenizin geneline yayılan bir soru sorduğunda çoğu zaman birkaç sayfayı arka arkaya çeker. İnsanlara göre ayarlanmış bir sınır bunu saldırı olarak okur.
  3. Bir doğrulama sayfası sunuluyor. JavaScript doğrulaması ya da CAPTCHA, içinde içerik olmayan bir 200’dür. Asistan onu çözmez; okuduğu şey doğrulama sayfasının kendisi olur — ve bazen bunu sizin siteniz sanıp karşısındaki kişiye aktarır.
  4. Birisi yıllar önce kullanıcı aracısına göre engelledi. User-agent içinde bot ya da crawler arayan eski bir kural, tarayıcı başvuru sayfamızdaki tarayıcıların hepsini yakalar — size ziyaretçi gönderecek olanlar dâhil.

Size olup olmadığını nasıl anlarsınız?

Bunu kendi tarayıcınızdan denemek hiçbir şey kanıtlamaz: sizin ev adresiniz, gerçek bir tarayıcı parmak iziniz ve büyük ihtimalle bir oturum çerezi var. Kontrolün başka bir yerden ve bir asistanın göndereceği kullanıcı aracısıyla yapılması gerekir.

# Bir insanın aldığı
curl -sI https://siteniz.com | head -1

# Bir cevap motorunun aldığı
curl -sI -A "Mozilla/5.0 (compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot)" \
  https://siteniz.com | head -1

# Birisi bağlantınızı sohbete yapıştırdığında yapılan çekmenin aldığı
curl -sI -A "Mozilla/5.0 (compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user)" \
  https://siteniz.com | head -1

Üç tane 200 görüyorsanız sorun yok. Bu listede herhangi bir 403, 429 ya da 503 varsa cevap odur. 200 görmek de tek başına iyi haber değil: dönen gövde bir doğrulama sayfasıysa durum satırı size bunu söylemez, içine bakmanız gerekir.

# Doğrulama sayfası 200 döner ve neredeyse hiç okunabilir metin içermez
curl -s -A "Mozilla/5.0 (compatible; OAI-SearchBot/1.0)" https://siteniz.com \
  | grep -ciE "just a moment|checking your browser|enable javascript|captcha"

Neyi değiştirmeli?

Çözüm bot korumasını kapatmak değil. Çözüm, tek bir kullanıcı aracısı paketini tek bir karar gibi görmeyi bırakmak — çünkü orada sonuçları birbirinin tersi olan iki ayrı karar var.

  • Cevap motorlarına ve kullanıcının tetiklediği çekmelere izin verin; bunu kenarda, kullanıcı aracısına göre ve hazır yapay zekâ kuralından önce yapın. Bağlantınızı bir insanın önüne koyanlar bunlardır: OAI-SearchBot ya da PerplexityBot’u engellemek sizi cevaptan çıkarır, bir eğitim tarayıcısını engellemek ise size hiç trafiğe mal olmaz.
  • Eğitim tarayıcılarını istediğiniz konumda tutun. Bu gerçek bir iş kararıdır ve bu yazı o konuda taraf tutmuyor. Sadece ayrı bir koldur ve ayrı bir kural olmalıdır.
  • Asistanları insan hız sınırının dışında bırakın. Bir cevap motorundan gelen on iki sayfalık bir seri, saldırı değil, tek bir soru soran tek bir kişidir.
  • Belgelenmiş bir tarayıcıya asla JavaScript doğrulaması sunmayın. İzin listesine alamıyorsanız düz bir 403 verin — en azından o zaman arıza hem sizin hem onların gözünde okunur olur, bir müşteriye siteniz diye aktarılmaz.

Her tarayıcının tam kullanıcı aracısı metni, ne işe yaradığı ve ölçülmüş örneklemin ne kadarının onu zaten engellediği yapay zekâ tarayıcıları başvuru sayfasında.

Üzerinde durmaya değer kısım

Bunlar yanlış yapılandırılmış sunucusu olan küçük siteler değil. Örneklem, güvenlik ekibi olan tanınmış şirketlerden oluşuyor ve ulaşılamaz olmak bu listedeki en eksiksiz arıza: diğer bütün sorunlar kötü okunan bir sayfa, bu ise hiç okunmayan bir sayfa. Aynı zamanda düzeltmesi en ucuz olanı, çünkü sitenizin nasıl yapıldığıyla değil, birinin açtığı bir kuralla ilgili.

Bir asistan sitenizi istediğinde ne aldığını görün — durum kodunu, doğrulama sayfalarını ve robots.txt dosyanızın hâlihazırda geri çevirdiği tarayıcıları.