警告:session_start():找不到保存处理程序 'redis'

Warning: session_start(): Cannot find save handler 'redis'

我想设置 php.ini 以使用 Redis 作为会话处理程序。我是这样做的:

session.save_handler = redis
session.save_path = tcp://172.17.0.2:6379

我的 Php 应用程序和 Redis 运行 在 2 个不同的容器中。 这是我在 Php:

中尝试 运行 的代码
<?php
if(!isset($_SESSION)){
        session_start();
}
?>

根据我的搜索,我发现我应该安装:

sudo apt-get install php5-redis

但是E: Unable to locate package php5-redis 我也尝试过:php-redisphp7-redisphp7.4-redis 和相同的结果。 apt-cache search php | grep -i redis 的结果是:

libphp-predis - Flexible and feature-complete PHP client library for the Redis key-value store

怎么了?

你需要使用pecl来安装redis:

pecl install redis

更多详情是here

如果您使用 docker 插入 Dockerfile:

RUN pecl install redis \
&& docker-php-ext-enable redis