0

我正在使用 Kohana 3.2 开发一个模块(一个简单的 cms),我收到了这个异常“读取会话数据时出错”。

我正在使用本机会话,有趣的是,如果我设置“默认”组数据库连接,则不会显示错误...(我正在使用自定义连接组,并且我已将此数据库连接组设置为用户、角色和 user_token 模型)。

这是我的配置文件

授权文件

return array(

    'driver'       => 'orm',
    'hash_method'  => 'sha256',
    'hash_key'     => 'just a test 1',
    'lifetime'     => 1209600,
    'session_type' => 'native',
    'session_key'  => 'just a test 2',

    // Username/password combinations for the Auth File driver

    'users' => array(
       // 'luca' => 'e12afe0d3ead3d36191d86229d27057d96d9f2e063fe6f3e86699aaab5310d42'
        // 'admin' => 'b3154acf3a344170077d11bdb5fff31532f679a1919e716a02',
    ),

);

会话.php

return array(
    'native' => array(
        'name' => 'session_native',
        'lifetime' => 43200,
    ),
    'cookie' => array(
        'name' => 'session_cookie',
        'encrypted' => TRUE,
        'lifetime' => 43200,
    ),
    'database' => array(
        'name' => 'session_database',
        'encrypted' => TRUE,
        'lifetime' => 43200,
        'group' => Pencil::db_group(),
        'table' => 'sessions',
        'columns' => array(
            'session_id'  => 'session_id',
            'last_active' => 'last_active',
            'contents'    => 'contents'
        ),
        'gc' => 500,
    ),
);
4

1 回答 1

0

您将 encrypted 设置为 true,因此您需要一个加密密钥。在你的 config/encrypt.php 添加这个:

  <?php

return array(
    'default' => array(
        'key' => 'MY_RANDOM_KEY_I_MADE_UP_ALL_BY_MYSELF',
    ),
);

我会将 session_key 设置为 'auth_user' 而不是你的随机密钥。我认为这种情况下的密钥与哈希密钥不同。

检查应用程序/日志中的日志以查看是否缺少其他任何内容。

于 2012-04-23T02:08:34.540 回答