【session.save_handler = files】
Session存储处理器名字,默认为files(文件存储),还可以是memcache、redis等。
【session.save_path = ' '】
定义传递给存储处理器的参数,默认为空。
save_handler = files时,值为Session文件的保存目录,默认为/tmp(文件名为 sess_Session ID)。
对于访问量较大,Session文件较多的情况,使用N参数来决定会话文件分布的目录深度,如设置 session.save_path = "2;/tmp/session"(注意使用双引号), 则Session文件存储路径类似于/tmp/session/4/b/sess_4b1e384ad74619bd212e236e52a5a174If(随机存储),注意当N大于0时不会执行自动垃圾回收。
找到PHP源码目录src下的/ext/session中的shell脚本mod_files.sh,执行shell脚本,创建目录结构(注意目录要有读写权限):
bash mod_files.sh /tmp/session 2 5
(目录 深度 哈希值)
save_handler = memcache或user(mysql、redis)时,值为服务器连接串,如session.save_path = 'tcp://127.0.0.1:11211'
【session.use_strict_mode = 0】
严格会话模式,为了实现最大兼容性,默认为0不启用。启用后则不接受未初始化的SessionID并重新生成。
【session.use_cookies = 1】
是否在客户端用cookie来存放SessionID。默认为 1(启用)。
【session.cookie_secure】
是否仅通过安全连接发送cookie。默认为 off。
【session.use_only_cookies = 1】
是否在客户端仅使用cookie存放SessionID,默认为1启用。可以防止通过URL传递会话ID的攻击。
【session.name = PHPSESSID】
存在cookie中的Session名。只能由字母数字组成,默认为PHPSESSID。如下修改该值:
【session.auto_start = 0】
是否启动自动初始化会话。默认为 0(不启动),启用时自动完成session_start()。
【session.cookie_lifetime = 0】
SessionID存储在客户端的cookie有效期,单位:秒,默认为0表示“直到关闭浏览器”失效。
【session.cookie_path = /】
cookie有效路径,默认为 /。
【session.cookie_domain =】
cookie有效域名。默认为无,表示根据cookie规范产生cookie的主机名。
【session.cookie_httponly =】
设置cookie只能通过HTTP协议访问。脚本语言(如JavaScript)无法访问。可以有效地帮助减少通过XSS攻击的身份盗窃(尽管并非所有浏览器都支持该设置)。 默认为无(boolean类型)。
【session.serialize_handler = php】
序列化(解序列化)的处理器名字,默认为php。
【session.gc_probability = 1】、【session.gc_divisor = 1000】
合起来用管理gc(garbage collection 垃圾回收)进程启动的概率。使用gc_probability / gc_divisor 计算,默认为1/1000 表示在每个请求中有千分之1的概率启动gc进程。
【session.gc_maxlifetime = 1440】
Session过期时间,单位秒,默认为24分钟。session.save_path设定N级深度后不会自动启动垃圾回收机制。
【session.referer_check =】
包含有用来检查每个 HTTP Referer 的子串。如果客户端发送了 Referer 信息但是在其中并未找到该子串,则嵌入的会话 ID 会被标记为无效。默认为空字符串。
【session.cache_limiter = nocache】
指定会话页面所使用的缓冲控制方法(none/nocache/private/private_no_expire/public)。默认为nocache。
【session.cache_expire = 180】
以分钟数指定缓冲的会话页面的存活期,此设定对 nocache 缓冲控制方法无效。默认为180。
【session.use_trans_sid = 0】
trans_sid支持(默认0),开启后禁用cookie也可以跨页面传递Session,关闭时可通过a标签、form表单等传递。
【session.sid_length = 26】
允许会话ID字符串长度。22到256之间。默认26。如果需要兼容性,可以指定32、40等。较长的会话ID更难猜测。建议至少32个字符。