• Session的一些小疑问


    1、Cookie禁用了以后Session还能用吗?如果可以,怎么做

    2、默认配置下,以session为登录凭证的站点,浏览器关闭了以后需要重新登录,如果想浏览器关闭以后重开还能用该怎么处理

    3、服务器上session文件的清理机制是怎样的,怎样做可以保证会话关闭之后session文件及时清除,这样可取吗

    session.cookie_lifetime //客户端cookie的生命周期 - 默认设置为0也就是浏览器关闭就删除该cookie
    session.gc_maxlifetime //session文件在服务器的声明周期-不保证session信息立即会得到删除 - 修改session.gc_probability=1可以但是对服务器压力加大

    ini函数设置:

    ini_set("session.cookie_lifetime",'3600');
     
    将客户端的cookie时间设置的长一点就不会每次重新开启浏览器都要重新登录
     
    浏览器禁用cookie的时候session如何启用:
     
    <?php
    
    session_start();
    
    $sn = session_id();//获取session_id的值并拼接到链接之中
    
    $url='<a href="http://localhost/test/b.php?sn='.$sn.'">下一页</a>';
    
    echo $url;

    通过get参数设置会话ID - (浏览器存储的PHPSESSION的值):

    <?php
    
    //获取session_id之后设置当前的会话ID
    session_id($_REQUEST['sn']);
    
    session_start();
    
    date_default_timezone_set('PRC');
    
    var_dump($_SESSION['a']);

    设置以下参数会自动给链接带上会话ID

    session.use_cookies = 0
    session.use_only_cookies = 0
    session.use_trans_sid = 1

    测试脚本

    <?php
    
    ini_set('session.use_cookies', 0);
    ini_set("session.use_only_cookies",0);
    ini_set("session.use_trans_sid",1);
    
    session_start();
    $url='<a href="b.php">下一页</a>';
    echo $url;

    你会看到生成的链接是这样的:

    http://localhost/test/b.php?PHPSESSID=***
     
     
     
  • 相关阅读:
    博客园定制CSS
    java 锁
    JavaEE各版本web.xml模板
    Thymeleaf
    Appendix
    MATLAB设置双y轴绘图,plotyy怎么设置不同图形色的颜色?坐标轴怎么设置?
    comsol出结果不正确一定要多检查自己的仿真程序有没有问题。 学会少让自己犯错误
    Data&Structural_parameters数据包
    comsol的一些S21,arg(ewfd.Ey)的问题
    origin常用函数
  • 原文地址:https://www.cnblogs.com/xuweiqiang/p/10724797.html
Copyright © 2020-2023  润新知