-
session.save_handler
string
-
session.save_handler yönergesi (kayıt sistemi), bir
oturumla ilişkilendirilmiş veriyi saklamakta ve geri almakta nelerin
kullanılacağını tanımlar. files (dosyalar) öntanımlı
değerdir. Bazı eklentilerin kendi save_handler
yönergeleri vardır; bunları kurulumunuzun phpinfo()
çıktısında görebilirsiniz. Ayrıca bakınız:
session_set_save_handler().
-
session.save_path
string
-
session.save_path yönergesi
session.save_handler yönergesinde belirtilen kayıt
sistemine hangi bağımsız değişkenlerin aktarılacağını tanımlar. Öntanımlı kayıt
sistemin (files) seçerseniz bu yönergenin değeri
dosyaların oluşturulacağı dosya yolu olacaktır. Ayrıca bakınız:
session_save_path().
Oturum dosyalarınızın yayılacağı dizin derinliğini belirlemekte
kullanılmak üzere seçimlik bir N bağımsız değişkeni 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 bağımsız değişkenini 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
bağımsız değişkeninin sıfırdan büyük bir değerle kullanılması durumunda
otomatik 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 bağımsız değişkenini 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.
Dosya saklama modülü dosyaları öntanımlı olarak mode 600 kullanarak
oluşturur. Bu öntanımlı değer seçimlik MODE ile
değiştirilebilir: N;MODE;/path burada
MODE dosya kipinin sekizlik tabanda gösterimidir.
Dosya kipini bu yolla belirlemek sürecin umask'ını etkilemez.
Uyarı
Bu yönerge öntanımlı değeriyle bırakılır veya herkesin
okuyabileceği bir dizin tanımlanırsa (ö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.
Dikkat
Dizin derinliğini belirlemekte kullanılan seçimlik N
bağımsız değişkeni yukarıda belirtildiği gibi kullanılırken 1 veya 2'den daha
yüksek bir değer kullanımı büyük sayıda dizin gerektirmesindan dolayı bir
çok site için uygun olmayacaktır; örneğin, 3 değeri dosya sistemi üzerinde
(2 ** session.sid_bits_per_character) ** 3
dizinin varolabileceğini öngörür, bu da çok sayıda
dosya girdisi açılması ve büyük miktarda alanın boşa harcanması demektir.
Sadece, sitenizin 2'den büyük bir N değeri gerektirecek
kadar büyük olması halinde 2'den büyük bir değer kullanabilirsiniz.
-
session.name
string
-
session.name yönergesi çerez ismi olarak kullanılacak
oturum ismini belirler. İsim sadece abecesayısal karakterler içermelidir.
PHPSESSID öntanımlıdır. Ayrıca bakınız:
session_name().
-
session.auto_start
bool
-
session.auto_start yönergesi, bir oturumun otomatik
olarak isteğin başlangıcında başlatılıp başlatılmayacağını belirler.
Öntanımlı değer 0 olup, başlatılmaz.
-
session.serialize_handler
string
-
session.serialize_handler yönergesi, veriyi
dizgeleştirmek/nesneleştirmek için kullanılacak eylemcinin ismini
belirler. Şimdilik sadece PHP dizgeleştirme biçemi (ismi:
php_serialize), PHP'nin dahili biçemleri
(php ve php_binary ismiyle) ve WDDX
(wddx ismiyle) desteklenmektedir. PHP,
WDDX desteği ile derlenmişse
wddx bir seçenek haline gelir.
php_serialize dahili olarak düz serialize/unserialize
işlevini kullanır ve php ile
php_binary'nin sahip olduğu sınırlamalardan azadedir.
Daha eski digeleştirme eylemcileri $_SESSION içinde ne bir sayısal indis
ne de özel karakterleri (| ve !)
içeren bir dizge indisi saklayabilir. Betiğin durmasına yolaçan özel
karakter hataları ve sayısal indislerden kaçınmak için
php_serialize biçemini kullanın.
php öntanımlıdır.
-
session.gc_probability
int
-
session.gc_probability yönergesi
session.gc_divisor yönergesi ile birlikte gc (garbage
collection) çöp toplayıcı yordamının başlatılma olasılığını yönetmek için
kullanılır. 1 öntanımlıdır. 0'a
eşit yada daha büyük olmalıdır. Ayrıntılar için
session.gc_divisor
yönergesinin açıklamasına bakınız.
-
session.gc_divisor
int
-
session.gc_divisor yönergesi
session.gc_probability yönergesi ile birlikte, her
oturum ilklendirilişinde gc (garbage collection) çöp toplayıcı yordamının
başlatılma olasılığını yönetmek için kullanılır. Olasılık,
gc_probability/gc_divisor şeklinde hesaplanır. Örneğin, 1/100 oranının
anlamı: Her istekte GC sürecinin başlatılma şansı %1'dir.
session.gc_divisor yönergesinin öntanımlı değeri
100'dür. 0'dan büyük olmalıdır.
-
session.gc_maxlifetime
int
-
session.gc_maxlifetime yönergesi verinin kaç saniye
sonra 'çöp' olarak ele alınıp temizleneceğini belirler. Çöp toplayıcı
oturum başlangıcında etkin olur (session.gc_probability ve
session.gc_divisor
yönergelerine bağlı olarak). 1440 (24 dakika) öntanımlı değerdir.
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.
-
session.referer_check
string
-
session.referer_check yöntemi, Her HTTP
Referrer başlığında içerilmesini istediğiniz bir alt
dizgeyi tanımlar. Referrer başlığı istemci tarafından
bu alt dizge içerilmeden gönderilmişse gömülü oturum kimliği geçersiz
olur. Yönergenin öntanımlı değeri boş dizgedir.
-
session.entropy_file
string
-
session.entropy_file yönergesi, oturum kimliğinin
oluşturulma sürecinde ek döküntü kaynağı olarak kullanılacak harici bir
özkaynağa (bir dosyaya) bir yol belirtir. Çoğu Unix sisteminde kullanılan
örnekler: /dev/random veya
/dev/urandom.
Bu özellik Windows'ta desteklenmektedir.
session.entropy_length yönergesine sıfırdan farklı bir
değer atamak PHP'nin Windows Random API'sini bir döküntü kaynağı olarak
kullanmasını sağlayacaktır.
Bilginize:
PHP 7.1.0'da kaldırıldı.
session.entropy_file için
/dev/urandom veya /dev/arandom
öntanımlıdır (hangisi varsa).
-
session.entropy_length
int
-
session.entropy_length yönergesi yukarıdaki yönergede
belirtilen dosyadan okunacak baytların sayısını belirler. Öntanımlı değer
0'dir (hiç bayt okunmayacak) 32
öntanımlıdır.
PHP 7.1.0'da kaldırıldı.
-
session.use_strict_mode
bool
-
session.use_strict_mode modülün katı oturum kimliği
kipini kullanıp kullanmayacağını belirler. Bu kip etkinse modül
ilklendirilmemiş oturum kimliklerini kabul etmeyecektir. Tarayıcı
tarafından ilklendirilmemiş bir oturum kimliği gönderilmişse, tarayıcıya
yeni oturum kimliği gönderilir. Uygulamalar katı kipte oturum
sabitlemesinden oturum benimsenmesi yoluyla korunur.
0(iptal) öntanımlıdır .
Bilginize:
session.use_strict_mode etkinleştirmek genel oturum
güvenliği için zorunludur. Tüm sitelerin bunu etkinleştirmesi önerilir.
Ayrıntılar için session_create_id() örneğine
bakınız.
-
session.use_cookies
bool
-
session.use_cookies yönergesi modülün, oturum
kimliğini istemci tarafında saklamak için çerezleri kullanıp
kullanmayacağını belirler. Öntanımlı değer 1 olup
çerezler kullanılır.
-
session.use_only_cookies
bool
-
session.use_only_cookies yönergesi modülün, oturum
kimliğini istemci tarafında saklamak için
sadece çerezlerin mi kullanılacağını belirler. Bu yönergeyi
etkin kılarak oturum kimliklerinin URL'lerde aktarılmaması sağlamak
suretiyle saldırıları önlemiş olursunuz. Öntanımlı
değer 1'dir (etkin).
-
session.cookie_lifetime
int
-
session.cookie_lifetime yönergesi tarayıcıya
gönderilen çerezin ömrünü saniye cinsinden belirler. Öntanımlı olan
0 değerinin anlamı "tarayıcı kapatılıncaya kadar"dır.
Ayrıca bakınız: session_get_cookie_params() ve
session_set_cookie_params().
Bilginize:
Zaman aşımı zaman damgası sunucu zamanına göre belirlenir. Sunucu
zamanının istemci zamanıyla aynı olma zorunluluğu yoktur.
-
session.cookie_path
string
-
session.cookie_path yönergesi oturum çerezinin
path anahtarını tanımlar. Bölü çizgisi
/ öntanımlıdır. Ayrıca bakınız:
session_get_cookie_params() ve
session_set_cookie_params().
-
session.cookie_domain
string
-
session.cookie_domain yönergesi oturum çerezinin
domain anahtarını tanımlar. Öntanımlı değer
none olup, çerez belirtimine göre çerezi üreten
sunucunun konak isminin kullanılacağı anlamına gelir. Ayrıca bakınız:
session_get_cookie_params() ve
session_set_cookie_params().
-
session.cookie_secure
bool
-
session.cookie_secure yönergesi oturum çerezinin
secure anahtarını tanımlar. Seçeneğe
on belirtilirse oturumlar yalnızca HTTPS bağlantılarla
çalışır. off belirtilirse hem HTTP hem de HTTPS
bağlantılarla çalışır. off öntanımlıdır.
Ayrıca bakınız:
session_get_cookie_params() ve
session_set_cookie_params().
-
session.cookie_httponly
bool
-
session.cookie_httponly yönergesi oturum çerezinin
httponly anahtarını tanımlar. Etkin olduğu takdirde
çerezlere sadece HTTP protokolü üzerinden erişilebilir. Yani çerezlere
JavaScript betik dilleriyle erişilemez. Bu ayar, (tüm tarayıcılar
tarafından desteklenmiyor olsa da) özellikle XSS saldırılarıyla kimlik
hırsızlığını önlemek için çok etkilidir.
-
session.cookie_samesite
string
-
Sunucuların bir çerezin siteler arası isteklerle birlikte gönderilmemesi
gerektiğini öne sürmelerine izin verir. Bu sav, istemcilerin siteler
arası bilgi sızıntısı riskini azaltmasına izin verir ve siteler arası
istek sahteciliği saldırılarına karşı bir miktar koruma sağlar. Bunun
tüm tarayıcılar tarafından desteklenmediğini unutmayın.
Boş bir değer, herhangi bir atama yapılmadığını belirtir.
Lax ve Strict değerleri POST
isteklerinde siteler arasında çerez gönderilmeyeceğini belirtir.
Get isteklerinde Lax siteler-arası çerez gönderilmesine
sebep olurken Strict buna sebep olmaz.
-
session.cache_limiter
string
-
session.cache_limiter yönergesi, oturum sayfaları
için kullanılacak önbellek denetim yöntemini belirler. Şu değerlerden
biri olabilir: nocache, private,
private_no_expire ve public
nocache öntanımlıdır. Bu değerlerin anlamları için
session_cache_limiter() işlevinin belgesine de
bakınız.
-
session.cache_expire
int
-
session.cache_expire yönergesi, önbelleğe alınan
oturumlar için dakika cinsinden ömür (ttl) tanımlar. Önbellek sınırlayıcı
yoksa bu ayar etkisizdir. 180 öntanımlı değerdir.
Ayrıca bakınız: session_cache_expire().
-
session.use_trans_sid
bool
-
session.use_trans_sid yönergesi, şeffaf SID desteğinin
etkin olup olmayacağını belirler. Öntanımlı değer 0
olup etkin değildir.
Bilginize:
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 7.1.0'dan beri, tam URL yolu, örn, https://php.net/, trans sid
özelliği tarafından elde edilmektedir. Öncesinde PHP sadece göreli URL yolunu
değerlendirirdi. Rewrite hedef konakları session.trans_sid_hosts
ile tanımlanır.
-
session.trans_sid_tags
string
-
Şeffaf oturum kimliği desteği etkinken oturum kimliğini içerecek HTML
etiketlerini belirtmek için kullanılır.
a=href,area=href,frame=src,input=src,form= öntanımlıdır.
form özel bir etikettir.
<input hidden="oturum_kimliği" name="oturum_ismi">
form değişkeni olarak eklenir.
Bilginize:
PHP 7.1.0 öncesinde,
url_rewriter.tags bu amaçla
kullanılırdı. PHP 7.1.0'dan beri, fieldset özel bir
etiket değildir.
-
session.trans_sid_hosts
string
-
Şeffaf oturum kimliği desteği etkinken oturum kimliğini içerecek
konakları belirtmek için kullanılır.
$_SERVER['HTTP_HOST'] öntanımlıdır.
Aralarda "," kullanarak çok sayıda konak belirtilebilir, konaklar
arasında boşluk bulunmasına izin verilmez.
Örnek: php.net,wiki.php.net,bugs.php.net
-
session.sid_length
int
-
session.sid_length oturum kimliği dizesinin uzunluğunu
belirtmek içindir. 22 ile 256 arasında olabilir.
32 öntanımlıdır. Uymluluk ihtiyacı varsa 32,40,vs. belirtilebilir.
Uzun oturum kimliklerini tahmin etmek zordur. En azından 32 karakter
olması önerilir.
İpucu
Uyumluluk bilgisi:
session.hash_function=0 (MD5) ve
session.hash_bits_per_character=4,
session.hash_function=1 (SHA1) ve
session.hash_bits_per_character=6 için 32 kullanın.
session.hash_function=0 (MD5) ve
session.hash_bits_per_character=5 için 26 kullanın.
session.hash_function=0 (MD5) ve
session.hash_bits_per_character=6 için 22 kullanın.
INI değerlerini, oturum kimliklerinde en azından 128 bit olacak
şekilde yapılandırın. session.sid_bits_per_character
için uygun bir değer atamayı unutmayın, yoksa daha zayıf bir oturum
kimliğiniz olur.
Bilginize:
PHP 7.1.0 ve sonrasında kullanılabilir.
-
session.sid_bits_per_character
int
-
session.sid_bits_per_character kodlu oturum kimliği
karakterlerinin bit sayısını belirtmek içindir. Olası değerler:
'4' (0-9, a-f), '5' (0-9, a-v), and '6' (0-9, a-z, A-Z, "-", ",").
4 öntanımlıdır. Bit sayısı arttıkça daha güçlü oturum kimlikleri elde
edilir. Çoğu ortam için 5 yeterlidir.
Bilginize:
PHP 7.1.0 ve sonrasında kullanılabilir.
-
session.hash_function
mixed
-
session.hash_function yönergesi oturum kimliğinin
üretilmesinde kullanılmak üzere bir ileti özeti algoritması
belirtilmesini sağlar. '0' değeri MD5 (128 bitlik)
algoritmasının, '1' ise SHA-1 (160 bitlik)
algoritmasının kullanılmasını sağlar.
hash eklentisini
(kullanılabilir durumdaysa) kullanarak sha512 veya
whirlpool gibi algoritmalar belirtilebilmektedir.
Desteklenen algoritmaların tam listesi hash_algos()
işlevi ile edinilebilir
Bilginize:
PHP 7.1.0'da kaldırıldı.
-
session.hash_bits_per_character
int
-
session.hash_bits_per_character yönergesi, ikil ileti
özeti dizgesi okunur biçeme dönüştürülürken karakterlerin kaç bitle
saklanacağını belirler. Olası değerler: '4' (0-9, a-f),
'5' (0-9, a-v), '6' (0-9, a-z, A-Z,
"-", ",").
Bilginize:
PHP 7.1.0'da kaldırıldı.
-
session.upload_progress.enabled
bool
-
Yükleme işleminin izlenmesini etkinleştirir. Öntanımlı olarak 1, yani
etkindir.
-
session.upload_progress.cleanup
bool
-
Tüm POST verisi okunur okunmaz (yani, yükleme tamamlandığında) işlem
bilgisi temizlenir. Öntanımlı olarak 1, yani etkindir.
Bilginize:
Bu özelliğin daima etkin olması şiddetle önerilir.
-
session.upload_progress.prefix
string
-
A prefix used for the upload progress key in the
$_SESSION içinde yükleme işlemi anahtarı için
kullanılacak önek. Bu önek, eşsiz bir indis elde ertmek için
$_POST[ini_get("session.upload_progress.name")]
değeriyle birleştirilir.
"upload_progress_" öneki öntanımlıdır.
-
session.upload_progress.name
string
-
İşlem bilgisini $_SESSION içinde saklamak için
kullanılacak anahtar. Ayrıca bakınız:
session.upload_progress.prefix.
$_POST[ini_get("session.upload_progress.name")] değeri
aktarılmammışsa veya kullanılabilir değilseyükleme işlemi kaydedilmez.
"PHP_SESSION_UPLOAD_PROGRESS" öntanımlıdır.
-
session.upload_progress.freq
mixed
-
Yükleme izleme bilgisinin ne sıklıkla güncelleneceğini tanımlar. Bayt
cinsinden veya yüzde olarak belirtilebilir. Örneğin, yükleme izleme
bilgisi her 100 baytta bir veya dosyanın her %1'i alındığında
güncellenebilir.
"1%" öntanımlıdır.
-
session.upload_progress.min_freq
int
-
Güncellemeler arasındaki asgari bekleme süresi (saniye cinsinden).
"1" öntanımlıdır.
-
session.lazy_write
bool
-
session.lazy_write = 1 atandığında oturum verisi sadece
değişirse yeniden yazılır. Bu öntanımlı değerdir ve etkindir.
Yükleme işlemi, session.upload_progress.enabled etkin olmadıkça ve
$_POST[ini_get("session.upload_progress.name")] değişkenine bir atama
yapılmadıkça kaydedilmeyecektir. Daha ayrıntılı bilgi çin bakınız:
Oturumda Yüklemelerin İzlenmesi