2017-08-11 64 views
0

有3個影響PHP會話生存時間的設置,可以在php.ini.htaccess中設置。從.htaccess的樣品是:PHP會話設置:概率和除數的作用是什麼?

# Sessions 
    php_value session.gc_probability 1 
    php_value session.gc_divisor 100 
    php_value session.gc_maxlifetime 600 

據我所知,這意味着在600秒後,該會話可以被破壞。 probabilitydivisor設置應該確定多久。

我也明白,這意味着上面的會議有百分之一的機會被摧毀;對於安靜的服務器,對於繁忙的服務器,除數應該更低,以便在過度使用服務器和及時銷燬會話之間取得平衡。

問題是爲什麼有兩個設置?我從未見過概率設置爲除1之外的任何值。

+0

https://stackoverflow.com/a/1270960/4621324 – Axalix

回答

0

session.gc_divisor與session.gc_probability結合定義每次會話初始化時啓動gc(垃圾回收)進程的概率。概率通過使用gc_probability/gc_divisor來計算,例如, 1/100意味着每次請求GC進程開始的概率爲1%。 session.gc_divisor缺省值爲100

文檔:

http://php.net/manual/en/session.configuration.php#ini.session.gc-divisor