程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php Session存儲到Redis的方法

php Session存儲到Redis的方法

編輯:關於PHP編程

當然要寫先安裝php的擴展,可參考這篇文章:Redis及PHP擴展安裝
修改php.ini的設置
復制代碼 代碼如下:
session.save_handler = redis
session.save_path = “tcp://127.0.0.1:6379″
修改後重啟php-fpm或nginx,phpinfo()

session redis
如果不想修改php.ini可這樣
復制代碼 代碼如下:
ini_set(“session.save_handler”,”redis”);
ini_set(“session.save_path”,”tcp://127.0.0.1:6379″);

如果配置文件/etc/redis.conf裡設置了連接密碼requirepass保存session的時候會報錯,save_path這樣寫 tcp://127.0.0.1:6379?auth=authpwd 即可。
有網友提到相對於文件存儲的session,redis或者memcache存儲session值會有並發一致性的問題,這塊並沒有細測過。
復制代碼 代碼如下:
<?php
//如果未修改php.ini下面兩行注釋去掉
//ini_set('session.save_handler', 'redis');
//ini_set('session.save_path', 'tcp://127.0.0.1:6379');
session_start();
$_SESSION['sessionid'] = 'this is session content!';
echo $_SESSION['sessionid'];
echo '<br/>';

$redis = new redis();
$redis->connect('127.0.0.1', 6379);
//redis用session_id作為key並且是以string的形式存儲
echo $redis->get('PHPREDIS_SESSION:' . session_id());
 ?>
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved