Session 儲存機制核心設定
| 參數 | 預設值 | 說明 |
| session.save_handler | files | 資料儲存/讀取處理器,預設用檔案系統 |
| session.save_path | /tmp | 檔案儲存路徑(save_handler=files 時生效) |
| session.use_cookies | 1 | 是否透過 Cookie 傳遞 Session ID |
| session.name | PHPSESSID | Cookie 中 Session ID 的名稱 |
| session.auto_start | 0 | 請求開始時自動啟動 Session(建議 0,手動控制) |
Cookie 相關參數
- session.cookie_lifetime:Cookie 存活秒數,0 表瀏覽器關閉即失效。
- session.cookie_path:Cookie 生效路徑,通常設
/。
- session.cookie_domain:Cookie 生效域名,跨子域共享時設定。
- session.cookie_secure:僅 HTTPS 傳輸(生產環境建議開啟)。
- session.cookie_httponly:防止 JS 存取 Session ID,防範 XSS。
垃圾回收 (GC) 機制
Session 檔案不會自動刪除,靠 GC 機制清理過期資料:
- session.gc_probability / gc_divisor:啟動 GC 的機率(預設 1/100)。
- session.gc_maxlifetime:資料超過此秒數視為垃圾(預設 1440 秒 = 24 分鐘)。
注意:多站點共用 save_path 時,GC 可能誤刪他站 Session,建議各站點獨立儲存目錄或改用 Redis/Memcached。
序列化與安全
- session.serialize_handler:序列化引擎,預設
php,可改 php_binary 或 igbinary 提升效能。
- session.use_strict_mode:嚴格模式拒絕未初始化的 Session ID,防固定攻擊。
- session.sid_length / sid_bits_per_character:加長 ID 長度與字元集,增強熵值。