在数据库中配置CakePHP 2.*会话和会话缓存

在数据库中配置CakePHP 2.*会话和会话缓存,php,session,cakephp,nginx,elastic-load-balancer,Php,Session,Cakephp,Nginx,Elastic Load Balancer,当我切换到AWS负载平衡器(多服务器)时,会话应该保持唯一。当我过去登录我的网站时,会话丢失,它重定向到主页。因此,我尝试使用以下代码将会话存储在DB中 Configure::write('Session', array( 'defaults' => 'database', 'handler' => array( 'model' => 'cake_sessions' ) )); 但是当管理员注销时,它用来存储会话数据。我已尝试配置它的失

当我切换到AWS负载平衡器(多服务器)时,会话应该保持唯一。当我过去登录我的网站时,会话丢失,它重定向到主页。因此,我尝试使用以下代码将会话存储在DB中

Configure::write('Session', array(
    'defaults' => 'database',
    'handler' => array(
        'model' => 'cake_sessions'
    )
));
但是当管理员注销时,它用来存储会话数据。我已尝试配置它的失败


如何在数据库中隐藏会话和缓存。

我不知道负载平衡器,但您可以通过几种方式处理会话,包括使用数据库

这是CakePHP使用数据库进行会话的默认配置

首先创建此表:

CREATE TABLE `cake_sessions` (
    `id` varchar(255) NOT NULL DEFAULT '',
    `data` text,
    `expires` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`)
);
然后,在app/core.php中配置会话

Configure::write('Session', array(
    'database' => array(
            'cookie' => 'CAKEPHP',
            'timeout' => 240,
            'ini' => array(
                'session.use_trans_sid' => 0,
                'url_rewriter.tags' => '',
                'session.use_cookies' => 1,
                'session.cookie_path' => static::$path,
                'session.save_handler' => 'user',
                'session.serialize_handler' => 'php',
            ),
            'handler' => array(
                'engine' => 'DatabaseSession',
                'model' => 'Session'
            )
        )
));

为什么不使用内置会话处理程序?@Ayaouc负载平衡器是否有效我已尝试过您的配置,但数据库中未保存任何数据能否请您邀请我加入群聊