Битый час пытаюсь получить правильный ключ сессии, подскажите где что упускаю?
Есть конфиг:
'session' => [
'class' => 'yii\redis\Session',
'redis' => 'redis',
'keyPrefix' => 'QAINAR_SESS_',
'timeout' => 3600,
],
echo "<pre>";
echo Yii::$app->session->id . PHP_EOL;
print_r(Yii::$app->session->keyPrefix . md5(json_encode([__CLASS__, Yii::$app->session->id])));
echo PHP_EOL;
print_r(Yii::$app->redis->executeCommand('KEYS QAINAR_SESS_*'));
echo "</pre>";
Получаю следующее:
8878353c8ca97c34021d62279cc7959a
QAINAR_SESS_85584472a3d4ad2bec0984e356079817
Array
(
[0] => QAINAR_SESS_fd4011b394ac47f32666d77e2ecd7e6d
[1] => QAINAR_SESS_e8192112a517f5f3b0e0e56def0aa2ce
)
Как видно ключа QAINAR_SESS_85584472a3d4ad2bec0984e356079817 в REDIS нет...
Код
Yii::$app->session->keyPrefix . md5(json_encode([__CLASS__, Yii::$app->session->id]))
взят из официального кода
https://github.com/yiisoft/yii2-redis/blob/master/...
/**
* Generates a unique key used for storing session data in cache.
* @param string $id session variable name
* @return string a safe cache key associated with the session variable name
*/
protected function calculateKey($id)
{
return $this->keyPrefix . md5(json_encode([__CLASS__, $id]));
}
Как из session_id() - 8878353c8ca97c34021d62279cc7959a получить ключ для redis - QAINAR_SESS_fd4011b394ac47f32666d77e2ecd7e6d ?