簡體   English   中英

找不到保存處理程序'redis'-Ubuntu

[英]Cannot find save handler 'redis' - Ubuntu

我正在使用PHP 5.6.23在ubuntu上運行LAMPP。

我決定將會話存儲在Redis中並進行安裝。 我也安裝了Predis。

在網上搜索時,我將php.ini更改為:

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

但是,當嘗試創建一個會話時,我遇到了這個錯誤:

Warning: session_start(): Cannot find save handler 'redis' - session startup failed in /path/to/the/Untitled.php

您可以認為Redis中存在問題,但事實並非如此。 它工作正常,我可以設置一些東西,並且可以使用Redis-CLI進行檢查:

我的redis“設置” PHP代碼是:

<?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中的結果:

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代碼:

<?php
session_start();


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

echo $count;

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

它必須在每次刷新時增加數量,但只會顯示錯誤。

我再次重新安裝了Redis(v 3.2.3),但仍然沒有區別。

有什么辦法解決嗎?

LAMPP可能是問題的原因嗎?

編輯:

我開始使用phpredis而不是predis。

您嘗試不同的事情。 Predis是Redis Server的直接客戶端。 如果要使用它們作為會話處理程序,則必須安裝php模塊。

sudo apt-get install php5-redis

或對於PHP7

sudo apt-get install php7.0-redis

然后,“ redis”應可用作會話處理程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM