php.ini中有关session的一些设定会影响到session函数的使用,现在以php5版本为例,我们来了解一下php.ini中有关session的设定:
;处理session存取的模式(预设:files)
session.save_handler = files
;session档案存放路径(预设:/tmp)
session.save_path = /tmp
;session使用cookie的功能(预设:启动 1)
session.use_cookies = 1
;表示在请求开始时是否自动启动一个会话(预设:关 0,此处可以改为1)
session.auto_start = 0
;以秒数指定了发送到浏览器的 cookie 的生命周期
session.cookie_lifetime = 0
;session生效的网站域,一般设置为网站根目录 /
session.cookie_path = /
;session使用cookie的域名称(预设:空)
session.cookie_domain =
;处理session存取的模式(预设:files)
session.save_handler = files
;session档案存放路径(预设:/tmp)
session.save_path = /tmp
;session使用cookie的功能(预设:启动 1)
session.use_cookies = 1
;session.use_only_cookies 指定是否在客户端仅仅使用 cookie 来存放会话 ID。启用此设定可以防止有关通过 URL 传递会话 ID 的攻击。此设定是 PHP 4.3.0 添加的。
session.use_only_cookies
= 1
;session的名字(预设:PHPSESSID)
;表示在请求开始时是否自动启动一个会话(预设:关 0,此处可以改为1)
session.auto_start = 0
;以秒数指定了发送到浏览器的 cookie 的生命周期
session.cookie_lifetime = 0
;session生效的网站域,一般设置为网站根目录 /
session.cookie_path = /
;session使用cookie的域名称(预设:空)
session.cookie_domain =
;
指定是否仅通过安全连接发送 cookie。默认为
off
。
session.cookie_secure = off
;定义用来序列化/解序列化的处理器名字。当前支持 PHP 内部格式(名为 php)和 WDDX(名为 wddx)。如果 PHP 编译时加入了 WDDX 支持,则只能用 WDDX。默认为 php。
session.serialize_handler = php
;按千分之一的比率进行垃圾收集
;垃圾收集的处理几率(预设:1)
session.gc_probability = 1
;设置进程比率,(php5新增参数,预设:100)
session.gc_divisor = 100
;定义用来序列化/解序列化的处理器名字。当前支持 PHP 内部格式(名为 php)和 WDDX(名为 wddx)。如果 PHP 编译时加入了 WDDX 支持,则只能用 WDDX。默认为 php。
session.serialize_handler = php
;按千分之一的比率进行垃圾收集
;垃圾收集的处理几率(预设:1)
session.gc_probability = 1
;设置进程比率,(php5新增参数,预设:100)
session.gc_divisor = 100
session.gc_divisor
与
session.gc_probability
合起来定义了在每个会话初始化时启动 gc(garbage collection 垃圾回收)进程的概率。此概率用 gc_probability/gc_divisor 计算得来。
;session数据(垃圾收集)被处理前的生存期(预设:1440[秒])
session.gc_maxlifetime = 1440
;PHP 4.2.3和更低的版本都有个BUG,即使你禁用了register_globals配置项,仍然可以在全局范围内初始化一个会话变量。
; PHP 4.3.0 及更高版本会在使用此特性时并且启用了session.bug_compat_warn 时发出警告 。此特性/错误可以通过关闭此选项而禁用。
session.bug_compat_42 = 0
session.bug_compat_warn = 1
; session.referer_check 包含有用来检查每个 HTTP Referer 的子串。如果客户端发送了 Referer 信息但是在其中并未找到该子串,则嵌入的会话 ID 会被标记为无效。默认为空字符串。
session.referer_check =
;特别设定session值的长度(预设:关)
session.entropy_length = 0
;特别设定session值的文件
session.entropy_file =
;使用cache限制器(预设:不要cache)
session.cache_limiter = nocache
;使用cache的生存期
session.cache_expire = 180
;使用sid值(session_id)传送模式(基于安全,预设:关)
session.use_trans_sid = 0
;session.hash_function 允许用户指定生成会话 ID 的散列算法。0为MD5(128比特),1为SHA-1(160比特)
session.hash_function = 0
;定义当转换2进制hash数据为一些可读的数据时,每个字符存储多少个比特.
;4 比特: 0-9, a-f
;5 比特: 0-9, a-v
;6 比特: 0-9, a-z, A-Z, “-”, “,”
session.hash_bits_per_character = 5
;URL重指向的标签
url_rewriter.tags = “a=href,area=href,frame=src,input=src,form=fakeentry”
对以上设置进行修改以后应该重启Apache服务器,以加载以上的修改。