【问题标题】:cakePHP Session expiring too sooncakePHP 会话过期太快
【发布时间】:2011-11-30 19:00:43
【问题描述】:

我已将Configure::write('Security.level', 'medium'); 设置为低,将Configure::write('Session.timeout', '120'); 设置为更高的数字,在cake/libs/security.php 中我已将inactiveMins() 函数设置为以下,

function inactiveMins() {
    switch (Configure::read('Security.level')) {
        case 'high':
            return 10;
        break;
        case 'medium':
            return 100;
        break;
        case 'low':
        default:
            return 550;
            break;
    }
}

但是会话仍然在 120 分钟左右到期。这是一个时间跟踪应用程序,所以我希望有让应用程序在后台运行直到需要的功能。但是会话关闭得太快了。由于这些选项不起作用,还有其他方法可以让会话一次打开几个小时吗?

来自 APP/CONFIG/CORE.PHP ***

/**
 * Session time out time (in minutes).
 * Actual value depends on 'Security.level' setting.
 */
    Configure::write('Session.timeout', '120');

核心版本 1.3.4

【问题讨论】:

  • 您可能已经意识到这一点,但值得一提的是Configure::write('Session.timeout', '120'); 使用秒数。
  • @MozMorris 你确定吗?在 core.php 文件中该行上方的注释中,它显示(in minutes)
  • 当然。我将发布我在 core.php 中的内容

标签: cakephp cakephp-1.3


【解决方案1】:

这是标准设置:

/**
* Session time out time (in seconds).
* Actual value depends on 'Security.level' setting.
*/
Configure::write('Session.timeout', '120');

我总是把它改成这样的:

Configure::write('Session.timeout', 120 * 60);

【讨论】:

  • 免责声明:我并不总是将其更改为那个,但每当我需要长时间的会话时,上述设置对我很有帮助。
  • 我更新了我的问题以显示我的核心内容......我也查看了我的所有其他应用程序,他们也说了同样的话。你在 1.3 上?
  • 我不怀疑你,我刚刚问了另一个开发者她说了什么,它说秒,那么给出了什么?在几分钟或几秒钟内是我的吗?
  • 大声笑。我在看 1.3(准确地说是 1.3.13)。底层代码设置 ini session.cookie_lifetime,以秒为单位。也许你在某处乘以 60 以将分钟转换为秒?
  • 仍然没有我的答案...现在玩等待游戏,看看它是否过期。我将超时设置为redic。时间。感觉就像我必须赞成一些事情。
【解决方案2】:

php.ini 文件覆盖了蛋糕设置。在app/config/core.php 中将Configure::write('Session.save', 'php'); 更改为Configure::write('Session.save', 'cake');

【讨论】:

    猜你喜欢
    • 2012-01-12
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    • 2012-02-05
    • 2012-03-05
    • 1970-01-01
    • 1970-01-01
    • 2011-10-17
    相关资源
    最近更新 更多