A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_URI::$config is deprecated

Filename: core/URI.php

Line Number: 101

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Router::$uri is deprecated

Filename: core/Router.php

Line Number: 127

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$benchmark is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$hooks is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$config is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$log is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$utf8 is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$uri is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$exceptions is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$router is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$output is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$security is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$input is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$lang is deprecated

Filename: core/Controller.php

Line Number: 75

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$load is deprecated

Filename: core/Controller.php

Line Number: 78

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$db is deprecated

Filename: core/Loader.php

Line Number: 390

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_DB_mysqli_driver::$autoinit is deprecated

Filename: database/DB_driver.php

Line Number: 371

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::open($save_path, $name) should either be compatible with SessionHandlerInterface::open(string $path, string $name): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 113

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::close() should either be compatible with SessionHandlerInterface::close(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 280

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::read($session_id) should either be compatible with SessionHandlerInterface::read(string $id): string|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 145

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::write($session_id, $session_data) should either be compatible with SessionHandlerInterface::write(string $id, string $data): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 223

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::destroy($session_id) should either be compatible with SessionHandlerInterface::destroy(string $id): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 303

A PHP Error was encountered

Severity: 8192

Message: Return type of CI_Session_files_driver::gc($maxlifetime) should either be compatible with SessionHandlerInterface::gc(int $max_lifetime): int|false, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice

Filename: drivers/Session_files_driver.php

Line Number: 344

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$session is deprecated

Filename: core/Loader.php

Line Number: 1290

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$pagination is deprecated

Filename: core/Loader.php

Line Number: 1290

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$email is deprecated

Filename: core/Loader.php

Line Number: 1290

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$ders_model is deprecated

Filename: core/Loader.php

Line Number: 353

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$bilgi_model is deprecated

Filename: core/Loader.php

Line Number: 353

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$data is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$benchmark is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$hooks is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$config is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$log is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$utf8 is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$uri is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$exceptions is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$router is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$output is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$security is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$input is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$lang is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$load is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$db is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$session is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$pagination is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$email is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$ders_model is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$bilgi_model is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$makale_model is deprecated

Filename: core/Loader.php

Line Number: 353

A PHP Error was encountered

Severity: 8192

Message: setcookie(): Passing null to parameter #7 ($httponly) of type bool is deprecated

Filename: core/Input.php

Line Number: 410

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property index::$yorum_model is deprecated

Filename: core/Loader.php

Line Number: 353

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$makale_model is deprecated

Filename: core/Loader.php

Line Number: 925

A PHP Error was encountered

Severity: 8192

Message: Creation of dynamic property CI_Loader::$yorum_model is deprecated

Filename: core/Loader.php

Line Number: 925

Cookie (Çerez) Nedir? Cookie Türleri Nelerdir? Çerezler Nasıl Çalışır?
Öneri ve Hata Raporu



Günün Sözü İnsan kafasında ne kurarsa, onu yaşar.

oylama 3/5 yorum 1 yorum yazar Hakan Taşan tarih 09 Temmuz 2015

İnternette Cookies (çerezler) ile ilgili onlarca yazı, makale bulmak mevcut. Ancak birçok yazıda cookie'nin ne olduğu yanlış tanımlanmakta. Bu yazıyı ve aşağıdaki 9 yazılık makale dizisini okumadan önce lütfen cookie ve session ile alakalı bildiğiniz bütün bilgileri aklınızdan çıkarın. 9 yazılık makale dizisinde cookie'nin ne olduğunu, session'ın ne olduğunu, 2 terimin nasıl yanlış tanımlandığını, bazı kavramların nasıl yanlış anlatıldığını, HTML5 ile gelen local storage ve session storage konularını elimden geldiğince anlatmaya çalışacağım.

 

Cookie Nedir? (Çerez)

Çerezler ilk olarak 1994 yılında Netscape için kullanılmaya başlandı. Geliştirilme amacı kişinin bir siteyi tekrar ziyaret edip etmediğini kontrol etmekti. Günümüze kadar geliştirildi ve en son halini aldı. Çerezler; kullanıcı, websitelerini gezerken, sitelerin (web server) tarayıcılar aracılığıyla ya hard diskinize ya da web server'a bıraktığı küçük bilgilerdir (genellikle text dosyası halinde). Bu sayede website ile iletişim daha hızlı olmakta, bu da kullanıcıya zaman kazandırmaktadır. Ayrıca websiteleri sizin hareketlerinizi takip edebilmekte ve sizi daha kolay tanımaktadır (örnek; kullanıcı adınız, en sevdiğiniz renk vb. hatırlaması). Bunlara ek olarak tarayıcınızın ismini, işletim sisteminizi, IP adresinizi vb. kaydedebilir. Çerezler hakkında bütün tanımlamaları okumak için RFC 6265 dökümanını okuyabilirsiniz.

Şimdi konunun en önemli yerine geldik. Cookie (çerez) genel bir ifadedir ve çerezlerin birden çok türü vardır. Aklımıza kazınan cookie'nin doğru tanımlaması "persistent cookie" veya "permanent cookie" dir. Diğer aklımıza kazınan session'ın doğru tanımlaması "session cookie" veya "transient cookie" dir. İşte bu 2 tanımlama aslında çerezin türleridir. Diğer çerez türleri ise "Secure cookie", "HttpOnly cookie", "Third-party cookie", "Supercookie" ve "Zombie cookie" dir. Yani session ve cookie'nin farkları diye bir karşılaştırma yapılamaz. Çünkü session zaten bir çerezdir, çerez türüdür. Ast, üst ile kıyaslanamaz. Ayrıca session ID, HTTP header (HTTP üst bilgi) alanlarından Set-Cookie ve Cookie üst bilgisi ile gönderilir ve alınır. Dolayısıyla karşılaştırmamız session ve cookie arasında değil, "Session Cookies" ve "Persistent Cookies" arasında olmalıdır. Ayrıca çerezlerin hard diskte depolandığı da yanlıştır. Çerezler değil, Persistent Cookies'ler hard diskte depolanır. Daha detaylı bilgiyi diğer makale dizilerinde okuyabilirsiniz.

Daha iyi anlaşılması için aşağıdaki resme bakabiliriz. Lütfen tanımlamalara dikkat edelim. Çerez'in genel bir terim olduğunu, bizim bildiğimiz session'ın aslında Session Cookies (geçici çerez veya oturum çerezi) olduğunu ve bizim bildiğimiz cookie'nin aslında Persistent Cookies (kalıcı çerez) olduğunu unutmayalım.

Çerezler Nasıl Çalışır?

Çerezler, HTTP header (HTTP üst bilgi) alanları ile gönderilir ve alınır. HTTP header; HTTP request (HTTP istek) ve HTTP response (HTTP yanıt) mesajlarından oluşur. Çalışma mantığını kısaca anlatmak gerekirse; bir siteye girildiğinde, kullanıcı, server'dan siteyi kendisine getirmesi için istek mesajı göndermiş olur, buna HTTP request denir. Server'da buna karşılık olarak yanıt verir ve siteyi kullanıcıya gönderir, buna da HTTP response denir. Çerezler, HTTP request'in Cookie alanı ve HTTP response'un Set-Cookie alanı ile tanımlanır ve böylece client-server ilişkisi kurulmuş olur. Aşağıdaki resim anlamanızı kolaylaştıracaktır. Daha detaylı bilgileri sonraki yazılarda okuyabilirsiniz.

paylaş Paylaş
oylama yap Oyla

makale yorumları YORUMLAR

1 Yorum


yorum

Taha Seçkin

01 Ekim 2018 23:51


Gerçekten çok güzel ve yaralı içerikler hazırlamışsınız tebrikler.