PHP网站单独设置session处理方式

设置原因:
在PHP的默认设置中,session过期时间是1440秒,GC触发概率是千分之一,session文件统一存放在同一个地方。当你在服务器上搭配了多个网站,session如果不进行单独设置,它的销毁可能不是如你所愿。
1:在A网站设定session过期时间20分钟,B网站过期时间60分钟,当A网站产生请求触发了GC时,B网站最近20分钟未修改的session文件也会被删除,而不是60分钟;
2:当网站增多,session文件变多,会造成系统效率降低
所以当同一个服务器有多个网站,单独设置网站的session参数就重要起来
具体相关参数设置
注意:以下参数需要在sessin_start之前设置才可生效

  1. 服务端session过期时间: ini_set(‘session.gc_maxlifetime’, 1440);
  2. 设置session所对应的cookie在浏览器的相关参数:session_set_cookie_params
    session_set_cookie_params(
    int $lifetime,----在浏览器的剩余保存时间eg:5,即5秒后该cookie过期
    string $path = ?,
    string $domain = ?,
    bool $secure = false,
    bool $httponly = false
    ):
  3. 读取/设置当前会话的保存路径:session_save_path(string $path = ?)
    当路径值为空时,获取session的保存路径,设置路径时,则session文件会保存在改目录下;可以通过设置该目录的读取权限来提高文件的安全性;
    如果网站有多个session,可以设置多个目录保存session文件,方式如下session_save_path(“2;”.APP_PATH . ‘session’);
    表示将session存储到 session这个文件夹中,并且是用2及散列。每一级目录分别是0-9和a-z共36个字母数字为目录名,这样存放session的目录可以达到36*36个;需要注意的是,php自己并不会自动创建子目录,需要您自己动手去创建

这些就是网站单独配置session的一些参数,有兴趣的可以自己动手尝试一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值