Tarayıcınızın Çerez Kadar Tatlı Bir Tarihi Var

Tarayıcınızın Çerez Kadar Tatlı Bir Tarihi Var

Ağu 06, 2026 <think> we need to produce 3-5 comma separated lowercase tags for the blog post described. the blog web history http stateless design sessions etc. we need to output only comma separated tags nothing else. the tags should be lowercase separated by commas. the user says: "generate 3-5 comma separated lowercase tags for this blog post. presumably appropriate to the blog content. should be lower case comma separated and no extra words. so something like: web cookies history session http but need to be 3-5 tags. should we include hyphens? lowercase tags presumably simple words. pr browser memory http stateless session management dev maybe "cookies http web history". but we need 3-5. so maybe 5 tags: cookies state management. but "web history" is two words; maybe "web-history" but that's hyphenated. lowerc but the user didn't restrict. possibly "web-history". but to be safe use simple words: "cookies history". that's five. we must ensure only those tags separated by commas nothing else. should not include spaces after commas? usually "cookies history". that's fine. the user said "comma separated". so that is okay. thus final answer: cookies history check if it's 3-5 tags: yes 5. thus answer. check if any other content: the blog content also mentions "state memory session management". so tags: "cookies state history". that's also okay. better to use "cookies history". that covers topics. make sure only these tags. now answer. </think> cookies

Tarayıcınızın Tatlıya Düşkün Hafızasının Lezzetli Tarihi

Bir gün bir yazılımcı bakkal dükkânına girmiş. Raflarda kurabiyeler, bisküviler, wafle... Adamın gözleri parlamış. "Bu cookie'leri session'larda saklayabilir misiniz?" diye sormuş. Bakkal şaşırmış: "Hangi çerezler efendim?" İşte tam bu anda, tatlı ile teknoloji dünyası garip bir şekilde kesişmiş.

Bu tesadüf mü? Hiç sanmıyorum. Arkasında web'in hafıza edinme hikâyesi var.

Web Neden Unutkan Doğdu?

Şöyle düşün: bir siteye tıkladığında tarayıcın sunucuya bir istek gönderir. Sunucu bu isteği alır, işler, cevap verir ve... her şeyi unutur. Tamamen. O istekte ne yaptığın, ne seçtiğin, nereye gittiğin—hepsini siler atar.

Bir sonraki tıklamada aynı sunucu karşına çıkar ama senin için bu ikinci bir randevu gibi. "Kimsin sen?" der. "Seni tanımıyorum."

Bu kulağa aptalca geliyor, değil mi? Ama HTTP tam da böyle tasarlanmış. Stateless—yani devletsiz, vatansız, hafızasız. Her istek birbirinden bağımsız. Sunucuya göre sen her seferinde yeni birisin.

Eskiden bu sorun değildi. İnsanlar web sayfalarını okur, belgeleri indirir, linklere tıklar ve çıkardı. Ama modern web daha fazlasını istedi: alışveriş sepetleri, kişiselleştirilmiş panolar, girişli hesaplar. Ve işte o anda, web'in hafızasızlığı ciddi bir problem haline geldi.

State: Webin İhtiyaç Duyduğu Bellek

State demek, geçmişte yaptığın şeylerin gelecekteki sonuçları etkilemesi demek. Sepete bir klavye ekledin—state değişti. Artık sepetinde klavye var. Ödemeye geçtiğinde sunucu bu state'i okur ve klavyeyi toplama ekler.

State nerede saklanır? Heryerde olabilir: bellekte, veritabanında, tarayıcıda. Asıl mesele onu nerede tutacağın değil—ondan fazla isteği birbirine bağlayıp tutarlı bir deneyim yaratmak.

Session'lar: Kopuk İstekleri Birleştirmek

Bir session, birbirinden bağımsız HTTP isteklerini mantıksal olarak bir bütün haline getirir. Girişinden çıkışına kadar olan süreç bir session olabilir. Ya da giriş yapmadan, misafir olarak alışverişe başlayıp Sepete eklediğiniz ürünleri hatırlaması da bir session'dur.

Önemli nokta: HTTP session oluşturmaz. Bunu uygulamanın kendisi yapar. Ne zaman başlayacağını, içinde ne olacağını, ne zaman biteceğini sen belirlersin. Aynı kullanıcı beş farklı sekmede beş farklı session açmış olabilir—bu normal.

Kimliğin Kim?

İşler burada karmaşıklaşıyor. Bir sunucu aynı anda milyonlarca aktif session'ı yönetir. Yeni bir istek geldiğinde sunucu şunu sorar: "Bu kimin session'u?"

İşte bu noktada devreye session identifier girer—senin session'unu diğerlerinden ayıran benzersiz bir işaret. Anlamlı olmak zorunda değil, gerçek bir kimlikle bağlantılı olması gerekmez. Rastgele bir string olabilir: 7f41c0a9 veya ses_88293847. Önemli olan, sunucunun bu işareti kullanarak doğru session verisini çekebilmesidir.

Identifier'ın kendisi veri değil, bir anahtar. Sunucu der ki: "Bana 7f41c0a9 altındaki session verisini ver." Ve bir anda sepetindeki ürünler karşına çıkar.

Cookie: Taşıyıcı Mekanizma

Peki bu identifier her istekle birlikte nasıl seyahat eder?

Sunucu kendine güvenemez—her istek farklı bir sunucu örneğine gidebilir. Tarayıcının bu identifier'ı saklayıp her istekle birlikte otomatik olarak göndermesi gerekir.

Ve cookie'ler tam da bunu yapar. Sunucu tarayıcıya küçük bir veri parçası gönderir—genellikle basit bir isim-değer çifti. Tarayıcı bunu saklar ve sonraki her istekte tereddütsüz geri yollar. İşte webin hafızası böyle doğdu.

Peki Neden "Cookie"?

Etymoloji burada bulanıklaşıyor. Terim büyük ihtimalle magic cookie'den geliyor—Unix dünyasında programlar arasında geçen bir token veya değer. Netscape'teki bir geliştirici aç mıydı, Unix espirisini mi anlamadı, yoksa bilinçli mi komik oldu—tarih bunu cevapsız bırakmış.

Bildiğimiz şey şu: her junior geliştiricinin ilk "cookie" aramasında çikolatalı kurabiye tarifleri çıkıyor. Belki programcı mizahı, belki arama hacmini hafife aldıkları bir an.

Her neyse, bir site "çerezleri kabul et" dediğinde artık biliyorsun ki sadece gezinme takibini kabul etmiyorsun—stateless web'i hafızalı hale getiren zekice bir çözümün parçası oluyorsun.


NameOcean'da startup'lara ve geliştiricilere domain tescilinden hosting'e kadar web altyapısı kurmalarında yardımcı oluyoruz. Çünkü bazen cookie'leri anlamak yetmez—onları çalıştıracak altyapıya da ihtiyacın var.

Read in other languages:

BG EL RU UZ CS SV FI RO PT PL HU NL NB IT FR ES DE DA ZH-HANS EN