中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP會話控制之失效時間與過期回收機制

發布時間:2020-07-19 15:42:15 來源:網絡 閱讀:949 作者:gutops 欄目:web開發

PHP會話控制之失效時間與過期回收機制

session的生命周期

從session的初始化開始,直到注銷的這段時間稱之為sesssion生命周期。

設置session生命周期再php.ini中的相關參數

session.save_path
    設置保存的session文件路徑。

session.use_cookies = 1
    設置為1時,利用cookie來傳遞sessionid

session.cookie_lifetime = 0 (默認為0)
    設置sessionid在客戶端cookie存儲的時間,默認為0,即關閉瀏覽器就失效。

session.gc_maxlifetime = 1440(默認值 單位為秒)
    設置session存活時間
    原理:每次GC啟動后,會通過stat得到session文件最后訪問的unix時間,
    通過現在的時間減去最后訪問的時間,大于session.gc_maxlifetime,則認為
    該session已過期,但該文件并沒有被刪除。因為php5的session采用被動回收
    機制,過期的session是不會自己消失的,而是通過觸發回收機制來處理過期的
    session。下面兩個參數為回收機制的配置。

session.gc_probability = 1(默認值)
session.gc_divisor = 1000 (默認值)
    這兩個配置決定了gc的概率,默認為1/1000。也就是不是每個session信息都有
    100%的概率被系統當做垃圾來處理的。
    意味著每1000次請求會啟動一次gc回收session。
    因為啟動gc進程會影響php的執行效率,所以頻率不易太頻繁。

注意:gc僅會處理session.save_path中的session文件。

注意:

1.如果session文件沒有及時回收,達到GB或更大級別的時候,就會影響該站點存
取session的速度,進而影響相關功能。

2.有一種情況,當某用戶的會話是活躍的,只是session文件一直未修改,但是系
統認為它是失效的,導致session文件被‘誤刪除’。怎么能避免這種情況呢?
<?php 
//手動去修改session文件的最后修改時間。
if(!isset($_SESSION['last_access'])||(time()-$_SESSION['last_access'])>60){ 
    $_SESSION['last_access'] = time(); 
}
?>
反之手動設置過期該怎么辦呢?
<?php 
    unset($_SESSION['last_access']);
    //也可以這樣 $_SESSION['last_access']=''; 
?>

PHP中設置session永不過期

通過上述參數設置描述,可否想到如何能讓session用不過期?
1.session.cookie_lifetime = 99999999,前提是session.use_cookies = 1

2.session.gc_maxlifetime = 99999999
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

九龙城区| 辉县市| 灵璧县| 三门峡市| 伽师县| 北辰区| 盖州市| 交城县| 定襄县| 噶尔县| 邹城市| 凤阳县| 波密县| 福清市| 遵义县| 隆化县| 合肥市| 黔江区| 江达县| 彭阳县| 博野县| 九江市| 平邑县| 武平县| 界首市| 龙泉市| 瑞安市| 上犹县| 兴隆县| 正宁县| 合山市| 揭东县| 德安县| 若羌县| 施甸县| 九江市| 石景山区| 罗定市| 昌平区| 余庆县| 霍林郭勒市|