首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到保存处理程序'redis‘- Ubuntu

找不到保存处理程序'redis‘- Ubuntu
EN

Stack Overflow用户
提问于 2016-08-22 16:18:04
回答 1查看 9.2K关注 0票数 2

我使用PHP 5.6.23在ubuntu上运行LAMPP。

我决定将我的会话存储在Redis中,并安装了它。我也安装了Predis。

在网上搜索的时候,我把我的php.ini改成了:

代码语言:javascript
复制
session.save_handler = redis
session.save_path = "127.0.0.1:6379"

但是当我尝试创建一个会话时,我遇到了这个错误:

代码语言:javascript
复制
Warning: session_start(): Cannot find save handler 'redis' - session startup failed in /path/to/the/Untitled.php

你可以认为Redis有问题,但事实并非如此。它工作正常,我可以设置一些东西,我可以用Redis-CLI检查它:

我的redis 'set‘PHP代码是:

代码语言:javascript
复制
<?php

require "predis/autoload.php";
$redis = new Predis\Client([
    'scheme' => 'tcp',
    'host'   => '127.0.0.1',
    'port'   => 6379,
]);
$redis->set('x', '42');
$redis->set('name','test');

?>

telnet的结果:

代码语言:javascript
复制
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
MONITOR
+OK
KEYS *
+1471853424.389215 [0 127.0.0.1:36912] "KEYS" "*"
*2
$4
name
$1
x

会话php代码:

代码语言:javascript
复制
<?php
session_start();


$count = isset($_SESSION['cont']) ? $_SESSION['cont'] : 1;

echo $count;

$_SESSION['cont'] = ++$count;
?>

它必须在每次刷新时增加数字,但它只会显示一个错误。

我重新安装了Redis (v3.2.3),但仍然没有区别。

有没有办法解决这个问题?

LAMPP会是问题的原因吗?

编辑:

我开始使用phpredis而不是predis。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-22 16:29:41

你可以尝试不同的东西。Predis是您的Redis服务器的直接客户端。如果你想使用它们作为你的会话处理器,你必须安装php模块。

代码语言:javascript
复制
sudo apt-get install php5-redis

或用于PHP7

代码语言:javascript
复制
sudo apt-get install php7.0-redis

那么"redis“应该可以用作会话处理程序。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39074443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档