Bu işlevlerin davranışı php.ini içindeki ayarlardan etkilenir.
İsim | Öntanımlı | Değişiklik Yeri | Sürüm Bilgisi |
---|---|---|---|
session.save_path | "" | PHP_INI_ALL | |
session.name | "PHPSESSID" | PHP_INI_ALL | |
session.save_handler | "files" | PHP_INI_ALL | |
session.auto_start | "0" | PHP_INI_ALL | |
session.gc_probability | "1" | PHP_INI_ALL | |
session.gc_divisor | "100" | PHP_INI_ALL | PHP 4.3.2'den beri kullanılabilmektedir. |
session.gc_maxlifetime | "1440" | PHP_INI_ALL | |
session.serialize_handler | "php" | PHP_INI_ALL | |
session.cookie_lifetime | "0" | PHP_INI_ALL | |
session.cookie_path | "/" | PHP_INI_ALL | |
session.cookie_domain | "" | PHP_INI_ALL | |
session.cookie_secure | "" | PHP_INI_ALL | PHP 4.0.4'ten beri kullanılabilmektedir. |
session.cookie_httponly | "" | PHP_INI_ALL | PHP 5.2.0'dan beri kullanılabilmektedir. |
session.use_cookies | "1" | PHP_INI_ALL | |
session.use_only_cookies | "1" | PHP_INI_ALL | PHP 4.3.0'dan beri kullanılabilmektedir. |
session.referer_check | "" | PHP_INI_ALL | |
session.entropy_file | "" | PHP_INI_ALL | |
session.entropy_length | "0" | PHP_INI_ALL | |
session.cache_limiter | "nocache" | PHP_INI_ALL | |
session.cache_expire | "180" | PHP_INI_ALL | |
session.use_trans_sid | "0" | PHP_INI_ALL | PHP <= 4.2.3'te PHP_INI_ALL. PHP < 5'te PHP_INI_PERDIR. PHP 4.0.3'ten beri kullanılabilmektedir. |
session.bug_compat_42 | "1" | PHP_INI_ALL | PHP 4.3.0'dan beri kullanılabilmektedir. PHP 6.0.0'da kaldırılmıştır. |
session.bug_compat_warn | "1" | PHP_INI_ALL | PHP 4.3.0'dan beri kullanılabilmektedir. PHP 6.0.0'da kaldırılmıştır. |
session.hash_function | "0" | PHP_INI_ALL | PHP 5.0.0'dan beri kullanılabilmektedir. |
session.hash_bits_per_character | "4" | PHP_INI_ALL | PHP 5.0.0'dan beri kullanılabilmektedir. |
url_rewriter.tags | "a=href,area=href,frame=src,form=,fieldset=" | PHP_INI_ALL | PHP 4.0.4'ten beri kullanılabilmektedir. |
Oturum yönetim sistemi, php.ini dosyanıza yerleştirebileceğiniz bazı yapılandırma yönergelerini destekler. Bu yapılandırma yönergelerinin kısa açıklamalarını aşağıda bulabilirsiniz.
Oturum dosyalarınızın yayılacağı dizin derinliğini belirlemekte kullanılmak üzere seçimlik bir N değiştirgesi vardır. Örneğin yönergeye '5;/tmp' değerini atarsanız, bir oturum dosyası şöyle bir konuma konabilir: /tmp/4/b/1/e/3/sess_4b1e384ad74619bd212e236e52a5a174If. N değiştirgesini kullanacaksanız bu dizinleri kullanmadan önce oluşturmuş olmalısınız. Bunu yapmak için ext/session altında mod_files.sh adında bir betik vardır (Windows için mod_files.bat). Ayrıca, N değiştirgesinin sıfırdan büyük bir değerle kullanılması durumunda özdevinimli bir çöp toplayıcının devreye gireceğine de dikkat ediniz; daha ayrıntılı bilgi için php.ini dosyanıza bakınız. Ayrıca, N değiştirgesini kullanmanız durumunda, noktalı virgül (;) ayracı php.ini dosyasında açıklamaları başlatmak için kullanıldığından yönergenin değerini tırnak içine almalısınız.
Bu yönergeyi öntanımlı değeriyle bırakırsanız veya herkesin okuyabileceği bir dizin tanımlarsanız (öntanımlı olan /tmp gibi), diğer kullanıcılar bu dizindeki dosyaların listesini alarak oturum bilgilerini sunucu üzerinde kendi amaçları doğrultusunda kullanabilirler.
Bilginize: PHP'nin 4.3.6 sürümünden önce, Windows kullanıcılar bu değeri PHP'nin oturum işlevlerini kullanacağı sırada değiştirmek zorundaydılar. Geçerli bir dosya yolu olarak, örneğin c:/temp belirtilebilir.
Bilginize:
Eğer session.gc_maxlifetime değeri olarak farklı betikler farklı değerler belirtiyorsa fakat oturum verisini saklamak için aynı yeri paylaşıyorlarsa verileri temizlemek için en küçük değere sahip betiğin değeri kullanılır. Bu durumda, bu yönerge session.save_path yönergesi ile birlikte kullanılmalıdır.
Bilginize: Öntanımlı olan dosyalara dayalı oturum yönetimini kullanıyorsanız, dosya sisteminiz dosyalara erişim zamanlarını (atime) saklamak zorundadır. Windows FAT bunu yapmaz; bu bakımdan, FAT dosya sistemini veya dosya erişim zamanınını kaydetmeyen harhangi bir dosya sistemini kullanmak zorundaysanız, çöp toplamayı sağlayacak başka bir yöntem kullanmalısınız. PHP 4.2.3'ten beri, bu amaçla atime yerine mtime (değişiklik zamanı) kullanılmaktadır; dolayısıyla, atime kaydı yapmayan dosya sistemlerinde artık böyle bir sorunla karşılaşmamanız sağlanmıştır.
Bilginize:
Zaman aşımı zaman damgası sunucu zamanına göre belirlenir. Sunucu zamanının istemci zamanıyla aynı olma zorunluluğu yoktur.
Bilginize: PHP 4.1.2 ve öncesinde, şeffaf SID desteğinin PHP ile birlikte derlenmesi için derleme sırasında --enable-trans-sid seçeneğin kullanılması gerekmektedir; PHP 4.2.0'dan itibaren, bu seçeneğin kullanılması gerekmemektedir. URL'ye dayalı oturum yönetiminin çerezlere dayalı oturum yönetimine göre daha fazla güvenlik riski vardır. Örneğin, kullanıcılar, etkin oturum kimliğini içeren bir URL'yi epostayla arkadaşlarına gönderebilir veya sık kullanılanlarına kaydedebilir; böylece bu kişiler sitenize hep aynı oturum kimliğiyle oturum açarlar.
PHP 5.3.0'dan itibaren hash eklentisini (kullanılabilir durumdaysa) kullanarak sha512 veya whirlpool gibi algoritmalar belirtilebilmektedir. Desteklenen algoritmaların tam listesi hash_algos() işlevi ile edinilebilir
Bilginize:
Bu yönerge PHP 5'ten itibaren kullanılabilmektedir.
Bilginize:
Bu yönerge PHP 5'ten itibaren kullanılabilmektedir.
Bilginize: Eğer tam HTML/XHTML uyumluluğu isterseniz, form girdisini silip form alanlarını sınırlamak için <fieldset> etiketlerini kullanın.
track_vars ve register_globals yapılandıma yönergeleri oturum değişkenlerinin nasıl saklanacağını ve eski haline getirileceğini belirler.
Bilginize:
PHP 4.0.3'ten itibaren, track_vars yönergesinin değeri daima On'dur.