Bu blogu kurarken tek bir soruyu merkeze aldım: içerik hem insanlar hem makineler tarafından en az sürtünmeyle okunabilsin. Aşağıda bunun için alınan kararlar var.

Üç biçimde aynı içerik#

Her yazı üç adresten servis ediliyor:

BiçimAdresKimin için
HTML/yazi-slugOkuyucu ve arama motorları
AMP/yazi-slug/ampMobil, hızlı yükleme
Markdown/yazi-slug.mdDil modelleri, ajanlar

Üçü de aynı kaynaktan üretiliyor. AMP sayfası ayrı bir şablon değil: aynı derlenmiş HTML, AMP'nin kabul etmediği etiketler kendi bileşenlerine çevrilerek sunuluyor. Böylece "AMP içeriği canonical'dan farklı" hatası yapısal olarak oluşamıyor.

Yapılandırılmış veri tek parça#

Her sayfa tek bir @graph yayınlıyor. Ayrı ayrı script blokları yerine tek grafikte @id referanslarıyla bağlanmış düğümler var:

WebPage ──isPartOf──> WebSite ──publisher──> Person
   │
   └──> BlogPosting ──author──> Person ──sameAs──> GitHub, X, LinkedIn

Bunun pratik faydası şu: "bu yazıyı kim yazdı, ne zaman güncellendi, yazar neyi biliyor" sorularının cevabı makine tarafından okunabilir hâlde duruyor.

llms.txt ve Markdown uçları#

Bir dil modeli siteyi gezdiğinde HTML'den gezinti, menü ve kalıp metinleri ayıklamak zorunda kalıyor; bağlam penceresinin önemli bir kısmı buna gidiyor. /llms.txt sitenin ne olduğunu ve hangi içeriğin nerede durduğunu Markdown olarak özetliyor, /llms-full.txt ise içeriğin tamamını düz metin veriyor.

Önbellek: origin'e gelen istek kadar hızlıyız#

HTML yanıtları s-maxage ile Cloudflare edge'inde tutuluyor. Public sayfalar hiç çerez üretmiyor — çünkü Set-Cookie gönderen bir yanıt edge'de önbelleklenmiyor. Yorum formundaki CSRF jetonu bu yüzden oturum tabanlı değil, APP_KEY ile imzalanmış bir zaman damgası.

Yazı yayımlandığında yalnızca etkilenen adresler purge ediliyor: yazının kendisi, anasayfa, kategorisi, etiketleri, beslemeler ve sitemap'ler.

Sırada ne var#

Bu yazıyı panelden düzenleyip kendi ilk yazınızı yazabilirsiniz. Panelde SEO denetimi sayfası, yayındaki her yazıyı tek tek kontrol edip eksik meta açıklama, kapak görseli, kısa cevap ve etiketleri listeler.