session 粗谈

1.session用来维护请求之间特定用户状态,因为服务器和客户端进行通信的http协议是无协议的,需要session.

2.开启session的两种方式:

  a.使用函数session_start()

  b.在php.ini中配置session.auto_start =1 //开启自动跟踪

3.设置session路径:

  a.可以再php.ini中的 session.save_path 来设置路径

  b.session_save_path或ini_set()来设置

4.预防session劫持

//生成token
function createToken(){
    $salt = "hijack";    //这里的内容自己定义
    $tokenStr = strval(date('w').$salt);
    $token = md5($tokenStr);
    
    //存入session中,隐式的加到url当中
    $_SESSION['token'] = $token;    //确保已经开启了session_start或者设置了session.auto_start=1
    output_add_rewrite_var("token", $token);
    return $token;
}

//验证token
function varliteToken(){
    if(!isset($_REQUEST['token']) || $_REQUEST['token'] != $_SESSION['token']){
        return ;
    }
    return true;
}

 

posted @ 2016-02-19 16:52  天道酬勤,坚持!  阅读(67)  评论(0)    收藏  举报