我无法使用 php 连接到 redis
P粉465287592
P粉465287592 2023-09-01 15:37:59
[PHP讨论组]

我无法使用 php 连接到 redis。 我用docker搭建了一个环境,尝试用php和redis容器从php连接redis,但是失败了。我收到以下错误。

PHP Warning:  PHP Startup: Unable to load dynamic library 'redis.so' (tried: /usr/lib/php/20190902/redis.so (/usr/lib/php/20190902/redis.so: undefined symbol: php_json_decode_ex), /usr/lib/php/20190902/redis.so.so (/usr/lib/php/20190902/redis.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
PHP Notice:  session_start(): Redis not available while creating session_id in /var/www/html/index.php on line 2
PHP Warning:  session_start(): Failed to read session data: redis (path: tcp://localhost:6379) in /var/www/html/index.php on line 2
string(0) ""
save_handler=redis
save_path=tcp://localhost:6379
session_id=

这是为响应错误而执行的 php 文件。

<?php
session_start();

ini_set('session.cookie-domain', 'localhost');

var_dump(session_id());
echo "save_handler=" . ini_get("session.save_handler") . "\n";
echo "save_path=" . ini_get("session.save_path") . "\n";
echo "session_id=" . session_id() . "\n";

$_SESSION['libname'] = "PhpRedis";
?>

php.ini 文件的一部分。

[Session]
; Handler used to store/retrieve data.
; http://php.net/session.save-handler
session.save_handler = redis
session.save_path = "tcp://localhost:6379"

;verifying redis extension module
extension = redis.so

; default redis timeout
redis.timeout = 5

如果我缺少解决此问题所需的任何信息,请告诉我。预先感谢您。

附: 我输入 ping,它返回 pong。 我可以使用 redis-cli 从 php 容器连接到 redis。另外,这里是redis.so的路径。 ~/usr/lib/php/20190902/redis.so php.ini 的路径(使用的服务器是 apache2)。 ~/etc/php/7.4/apache2/php.ini

P粉465287592
P粉465287592

全部回复(2)
P粉116631591
  1. 检查 radish 是否作为一个团队工作redis-cli ping 回答乒乓

  2. 确保您的 PHP 配置包含 Redis 扩展的正确设置。检查php.ini文件是否指定了redis.so的正确路径以及其他必要的配置。

P粉920199761

我已将 Php.ini 文件调整如下。
调整前

session.save_path = "tcp://localhost:6379"

调整后

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

谢谢。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号