在ajax请求

时间:2015-05-22 13:23:41

标签: php ajax session

我想保护一点我的应用程序,特别是我想改进会话的处理方式。所以,此刻我知道几个事实:

  1. session_regenerate_id(false)不会销毁旧会话
  2. session_regenerate_id(true)摧毁旧会话。使用普通页面重新加载时,使用session_regenerate_id(true)
  3. 没有任何问题

    然而,在制作数十个并发 AJAX请求时,可能会有一个     导致错误消息object destruction failed的问题。

    所以,没有什么可做的,然后再使用     AJAX请求中的session_regenerate_id(false)

    但需要的是,以某种方式标记以前的过时的会话,这些会话因调用session_regenerate_id(false)而变得过时,因为" zombie"会以某种方式被破坏而不会丢失会话文件夹。

    我需要一些关于如何实现这一点的实用建议。

1 个答案:

答案 0 :(得分:0)

所有会话清理(包括具有重新生成的ID的清理)都由PHP的会话垃圾收集器处理。调用session_regenerate_id(false)从存储中删除旧会话时,没有什么特别需要。

适用于session.gc_probabilitysession.gc_divisorsession.gc_maxlifetime

PHP's settings

您还可以根据last access time运行自己的会话存储清理。