CakePHP数据库会话是否会自动神奇地清除?

时间:2012-05-03 10:45:56

标签: session cakephp-1.3

我正在使用Cakephp 1.3并在我的数据库中保存会话。

到目前为止,没有任何已创建的会话已从'cake_sessions“表中清除。

我想知道CakePHP核心或进程是否从此表中清除会话行,或者我是否需要处理此问题。如果CakePHP核心或进程自动神奇地处理这个问题,那么我的表中的会话条目没有被清除的可能原因是什么/

1 个答案:

答案 0 :(得分:2)

我一直在谷歌搜索这个确切的问题(很高兴你问了)。不得不在#CakePHP IRC上询问开发人员。

显然在PHP触发垃圾收集时清理数据库。默认情况下,这大约是每1,000个请求。您可以通过设置session.gc_divisor

来控制频率
ini_set('session.gc_divisor', 1000);    // this is the default
ini_set('session.gc_divisor', 1);       // this will run GC on every request
                                        // (helpful for debugging)

至少对于CakePHP 2.x来说也是如此,但我怀疑它也适用于1.3。