本人刚接触php,想请教几个关于session的问题,希望能得到稍微详细点的解答,谢谢!大家可以看哪个问题多了解一点就可以多说几句。1  如果会话采用cookie存储方式,改会话的生存周期是session_cookie_lifetime的设置值,还是session.gc_maxlifetime所设置的值?2 介绍一下session的缓存机制(session.cache_limiter)及用法3 用户定义的会话处理器在现代php网站上的应用是否广泛(session_set_save_handler)?

解决方案 »

  1.   

    1
    ; Lifetime in seconds of cookie or, if 0, until browser is restarted.
    session.cookie_lifetime = 0; After this number of seconds, stored data will be seen as 'garbage' and
    ; cleaned up by the garbage collection process.
    session.gc_maxlifetime = 1440
    2
    ; Set to {nocache,private,public,} to determine HTTP caching aspects
    ; or leave this empty to avoid sending anti-caching headers.
    session.cache_limiter = nocache
    3
    ; Handler used to store/retrieve data.
    session.save_handler = files
      

  2.   

    1. 是session_cookie_lifetime2. 分别可以用这三个nocache,private,public选项来决定http缓存特征(属性), 如果为空, 则不发送anti-caching header头3. 那个函数可有可无, 一般默认在php.ini里的设置, 官方有个例子教你session_set_save_hanler用法,意图很清楚, 通过这个函数, 通过以file方式变成database方式来存储数据实现session机制http://php.net/manual/en/function.session-set-save-handler.php