PHP Session可以儲存到文字或者記憶體、還有資料庫,今天講的.是存到Redis的方法。就讓小編來告訴大家吧!
修改的設定
複製程式碼 程式碼如下:
_handler = redis
_path = “tcp://″
修改後重啟php-fpm或nginx,phpinfo()
session redis
如果不想修改可這樣
複製程式碼 程式碼如下:
ini_set(“_handler”,”redis”);
ini_set(“_path”,”tcp://″);
如果配置檔案/etc/裡設定了連線密碼requirepass儲存session的時候會報錯,save_path這樣寫 tcp:// 即可。
有網友提到相對於檔案儲存的session,redis或者memcache儲存session值會有併發一致性的問題,這塊並沒有細測過。
複製程式碼 程式碼如下:
<?php
//如果未修改下面兩行註釋去掉
//ini_set('_handler', 'redis');
//ini_set('_path', 'tcp://');
session_start();
$_SESSION['sessionid'] = 'this is session content!';
echo $_SESSION['sessionid'];
echo '<br/>';
$redis = new redis();
$redis->connect('', 6379);
//redis用session_id作為key並且是以string的形式儲存
echo $redis->get('PHPREDIS_SESSION:' . session_id());
?>