PHP'de oturum yönetimi konusunda kafam biraz karışık, açıkçası yeni başlayan biri olarak hangi yöntemi kullanmam gerektiğine karar veremedim. Varsayılan $_SESSION süper globaliyle başladım ama proje büyüdükçe güvenlik ve performans endişeleri baş gösterdi. Özellikle oturum sabitleme (session fixation) ve oturum çalma (session hijacking) gibi saldırılara karşı ne kadar dayanıklı olduğunu merak ediyorum. Bir arkadaşım "session_set_save_handler" ile özel bir depolama katmanı yazmamı önerdi, ama bu benim için biraz aşırı geldi. Sizler bu konuda ne yapıyorsunuz? Özellikle oturum verilerini veritabanında tutmak mı daha mantıklı, yoksa Redis veya Memcached gibi bir önbellekleme sistemi mi kullanıyorsunuz?
Kendi deneyimlerimden bahsedeyim: Küçük bir blog projesinde sadece giriş yapan kullanıcıyı tanımak için $_SESSION kullandım ve sorun yaşamadım. Ama şimdi bir e-ticaret sitesi yapıyorum, sepet bilgilerini, kullanıcı tercihlerini oturumda tutmam gerekiyor. Varsayılan dosya tabanlı oturum depolamanın yavaşladığını hissediyorum, özellikle çok kullanıcılı ortamda performans sorunu yaratıyor mu? Bir de oturum süresini ayarlarken "session.gc_maxlifetime" ile "session.cookie_lifetime" arasındaki farkı tam kavrayamadım, bu konuda kafası karışık olan başka var mı?
Son olarak, modern frameworklerin (Laravel, Symfony gibi) oturum yönetimini nasıl ele aldığını merak ediyorum. Onların kendi çözümlerini mi kullanmalıyım, yoksa çıplak PHP'de kalıp daha güvenli bir yapı mı kurmalıyım? Özellikle "session_regenerate_id()" fonksiyonunu her istekte çağırmak gibi bir pratik var mı, yoksa sadece giriş yaparken mi yeterli? Deneyimlerinizi paylaşırsanız memnun olurum, çünkü internette çok fazla çelişkili bilgi var ve hangi yaklaşımın gerçekten "en iyi" olduğunu kestiremiyorum.
Kendi deneyimlerimden bahsedeyim: Küçük bir blog projesinde sadece giriş yapan kullanıcıyı tanımak için $_SESSION kullandım ve sorun yaşamadım. Ama şimdi bir e-ticaret sitesi yapıyorum, sepet bilgilerini, kullanıcı tercihlerini oturumda tutmam gerekiyor. Varsayılan dosya tabanlı oturum depolamanın yavaşladığını hissediyorum, özellikle çok kullanıcılı ortamda performans sorunu yaratıyor mu? Bir de oturum süresini ayarlarken "session.gc_maxlifetime" ile "session.cookie_lifetime" arasındaki farkı tam kavrayamadım, bu konuda kafası karışık olan başka var mı?
Son olarak, modern frameworklerin (Laravel, Symfony gibi) oturum yönetimini nasıl ele aldığını merak ediyorum. Onların kendi çözümlerini mi kullanmalıyım, yoksa çıplak PHP'de kalıp daha güvenli bir yapı mı kurmalıyım? Özellikle "session_regenerate_id()" fonksiyonunu her istekte çağırmak gibi bir pratik var mı, yoksa sadece giriş yaparken mi yeterli? Deneyimlerinizi paylaşırsanız memnun olurum, çünkü internette çok fazla çelişkili bilgi var ve hangi yaklaşımın gerçekten "en iyi" olduğunu kestiremiyorum.