gc_maxlifetime 的注释是:
After this number of seconds, stored data will be seen as 'garbage' and
cleaned up by the garbage collection process.是经过 1440 秒后session储存的数据会被视为'垃圾',会被gc清除
你在看看下面两个配置节session.gc_probability
session.gc_divisorPHP session垃圾回收的机制是按一定几率触发执行的,按照实际情况配置一下吧。

解决方案 »

  1.   

    补充一下,也就是说,如果你的站点没有访问,就算你设置1秒,几率设置为100/100,回收是不会触发的。不过这只是针对默认的文件session而言。其他的session实现的backend有可能有自己的gc,例如memcached
      

  2.   


    我把这两个参数都改成100了:
    session.gc_probability=100
    session.gc_divisor=100
    是不是100%会被回收?
      

  3.   

    现在又发现一个新问题:在php文件开头加上session_start()后,本地访问该页面没有问题,如果用另一台机器访问,就会显示一个页面没有找到的错误(IE的那个),这是怎么回事呢?
      

  4.   

    你说的这个问题我也是搞不清楚的,我自己也实验过,根本没有删除一个文件,楼主自己调用session_destory删除掉它吧。
      

  5.   

    自己删除session文件的话,应该在什么时候写删除代码呢?
    因为我这个session放的是登录者的id,这样每个页面都会首先判断session中的登录者id是否存在,存在则检查id所对应的权限,然后再决定是否显示该页面。
    且页面没有登出功能,使用者可以随时关闭浏览器退出。
    那什么时候应该手动删除这些session?写在哪里比较合适?
    ---------------------------
    另:同一个php文件中写的session_star(),用本地机localhost访问该页面就可以,用另一台机器通过ip访问就不可以。我觉得这个和代码没有关系吧,貌似是哪里配置的问题,有人知道吗?
      

  6.   

    在客户注销的时候用session_destory删除掉它,就可以了,其实楼主自己搞个session_id定个ID号,把它存入数据库,如果它不记得注销,在下次登录时删除上次的就可以了。
      

  7.   

    本人机器是日文的,大概意思说找不到页面web服务器发生了技术问题,DNS错误什么的,对照了一下网上中文的错误页面,应该是404吧
      

  8.   

    题外话,还是尽量别用硬盘session了,用数据库保存session挺方便的。
      

  9.   


    没有代号呀......
    其实楼主自己搞个session_id定个ID号,把它存入数据库,如果它不记得注销,在下次登录时删除上次的就可以了。
    题外话,还是尽量别用硬盘session了,用数据库保存session挺方便的
    -----------------------------------------------------------------------------------------
    以上两点是不是一个意思?