PHP自学之路-----PHP.in中session和cookie的配置说明

1、session.name

    该配置用于设置session的名字,这个值可以通过session_name()获取

2、session.use_trans_sid 默认为0

     说明给每个url启用session名=sessionId,对安全又影响,不推荐开启

3、session.save_path = 路径

       可以配置把网站的session文件放在那个目录下

4、下面的是一组,用来控制session文件存在时间

       session.gc_maxlifetime = 1440//session文件生命周期

        session.gc_probability = 1

        session.gc_ divisor = 1000

       说明,当某个用户操作session的时候,会使用到session_start(),该函数会跳用gc (垃圾回收机制)。但是其概率是 session.gc_probability /session.gc_ divisor /

5、session.cookie_lifetime =0

     该设置可以指定cookie 默认的生命周期,默认为0,表示关闭浏览器后,该cookies失效。

6、自定义会话处理器

session的各种操作都可以通过自定义会话处理器来自己决定怎么处理。session_set_save_handler

如果你要自定义处理session,需要在php.ini文件中做一个设置

session.save_handler=[files\user] 

<?php
function open($save_path, $session_name) 
{
  global $sess_save_path, $sess_session_name;
       
  $sess_save_path = $save_path;
  $sess_session_name = $session_name;
  return(true);
}

function close() 
{
  return(true);
}

function read($id) 
{
  global $sess_save_path, $sess_session_name;

  $sess_file = "$sess_save_path/sess_$id";
  if ($fp = @fopen($sess_file, "r")) {
    $sess_data = fread($fp, filesize($sess_file));
    return($sess_data);
  } else {
    return(""); // Must return "" here.
  }

}

function write($id, $sess_data) 
{
  global $sess_save_path, $sess_session_name;

  $sess_file = "$sess_save_path/sess_$id";
  if ($fp = @fopen($sess_file, "w")) {
    return(fwrite($fp, $sess_data));
  } else {
    return(false);
  }

}

function destroy($id) 
{
  global $sess_save_path, $sess_session_name;
       
  $sess_file = "$sess_save_path/sess_$id";
  return(@unlink($sess_file));
}

/*********************************************
* WARNING - You will need to implement some *
* sort of garbage collection routine here.  *
*********************************************/
function gc($maxlifetime) 
{
  return true;
}

session_set_save_handler("open", "close", "read", "write", "destroy", "gc");

session_start();

// proceed to use sessions normally

?>



你可能感兴趣的:(session,cookie)