欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php中如何配置Session

程序员文章站 2022-04-09 08:52:25
...
在Web 技术发展历史上,虽然 Cookie 技术的出现是一次重大的变革,但 Cookie 实在客户端的计算机中保存资料 ,所以引起了一个争议:用户有权阻止 Cookie 使用,使 Web 服务器无法通过 Cookie 来跟踪用户信息。而 Session 技术是将使用者相关的资料存放在服务器系统之下,所以使用者无法停止 Session 的使用。

可以把 Cookie 比喻成第一次去商场时,商家为客户办理的购物会员卡,并由客户自己保存。如果客户下次再去商场时忘记携带购物卡,或者把购物卡丢失了,这样用户就不能再次使用会员身份来购物了。但是如果商家再为客户办理完会员卡之后,由商场来保存这张会员卡,用户就不需要把卡放在自己身上了。但是商场办理会员卡的客户特别多,当客户每次来商场消费时,商场怎么才能知道客户是不是商场的会员呢? 这就要在客户来商场办理会员卡的时候,商场会要求保存客户班里的会员卡的卡号,当下次客户再来购物消费时,商场就可以通过客户的卡号查询到会员卡的登记消费等信息了。

Session就是这样,在客户端仅需要保存由服务器为用户创建的一个 Session 标识符(相当于会员卡的卡号),称之为

Session ID,而在服务器端(文件/数据库中)保存 Session 变量的值 。Session ID是一个既不会重复又不容易被找到的有规律的、由32位十六进制数组成的字符串。Session ID 会保存在客户端的 Cookie里,如果用户阻止 Cookie 的使用,则可以将 Session ID 保存在用户浏览器地址栏的 URL中。

在php配置文件中,有一组和 Session 相关的配置选项。通过对一些选项的设置,就可以对 Session 进行配置,否则将使用默认的 Session配置。

php.ini设置参考项:

1. 处理session存取的模式

session.save_handler = files

2. session档案存放路径

session.save_path = /tmp

3. session使用cookie的功能,启动: 1

session.use_cookies = 1

4. session名字

session.name = PHPSESSID

5. 自动启动;0:关;1:开启

session.auto_start = 0

6. session使用cookie的生存期,以秒为单位

session.cookie_lifetime = 0

7. cookie有效作用域名

session.cookie_domain = "a.com"

8. 概率是 session.gc_probability/session.gc_divisor 结果 1/1000;不建议设置过小,因为session的垃圾回收,是需要检查每个文件是否过期的

session.gc_probability = 1

session.gc_divisor = 1000

9. 过期时间 默认24分钟

session.gc_maxlifetime = 1440

以上就是php中如何配置Session的详细内容,更多请关注其它相关文章!

相关标签: php,配置,Session