php - 警告:session_start():找不到保存处理程序“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-redis
, php7-redis
,php7.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
更多细节在这里
如果您使用 docker insert 到 Dockerfile 中:
RUN pecl install redis \
&& docker-php-ext-enable redis
推荐阅读
- laravel - 在 Bootstrap Laravel 中使用带有选项卡式导航药丸的路由链接
- javascript - 为什么我的 React 代码在导入我的功能组件时会抛出未定义的错误?
- linux - 为什么将日志存储在 root 中不正确?
- dictionary - 当我检查我需要从服务器获取的数据时,我得到了一个空的地图错误
- nlp - 如何使用自然语言处理将句子分成两半?
- asp.net-mvc-5 - 在 Windows Server 2012 上调试应用程序时面临的问题
- sql-server - SQL 代理作业未将计划从每周更新为每天
- python - Python中的指数函数拟合散点图
- android - 在搜索按钮单击时无法获取 EditText 的文本
- google-apps-marketplace - 在 GSuite Marketplace SDK 配置屏幕上,“与 Google 集成”有什么作用?