字體:  

將PHP Session 儲存從files 改到 redis 的解決方案

Alex_Chang 發表於: 2020-4-09 10:45 來源: ADJ網路控股集團


PHP預設就支持保存session到redis,不需任何額外代碼。安裝後,用redis-cli monitor實時監控可以檢測到。

1. 安裝PHP Redis extension : php-pecl-redis (phpredis)
# yum install php-pecl-redis

2. 修改php.ini

打开 php.ini 文件,設置下面兩個值:

session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"

如果Redis有密碼,用下面的配置:

session.save_path = "tcp://127.0.0.1:6379?auth=password"

配置完成后,重起 PHP-FPM。

3. 修改 php-fpm.conf

PHP-FPM 的配置文件/etc/php-fpm.conf 或者/etc/php-fpm.d/www.conf中,也有session的配置。

它們的session 配置優先權比 php.ini 高,會覆蓋 php.ini 中的配置。

所以,也直接在这里面改:

php_value[session.save_handler] = redis
php_value[session.save_path] = "tcp://127.0.0.1:6379"

然后重起 PHP-FPM。這樣就可以囉!

4. 幾個簡單的使用指令

QUOTE:

查看redis memory 使用量
# redis-cli info memory

查看 redis 上的 keys 數量
# redis-cli dbsize

Clear Redis cache
# redis-cli flushall

Monitor Redis log
# redis-cli monitor
參考資料:https://www.awaimai.com/1871.html