gpt4 book ai didi

php - Zend 无法启动与 Redis 的 session

转载 作者:可可西里 更新时间:2023-11-01 10:58:34 25 4
gpt4 key购买 nike

我正在为一个正在使用的项目担任技术 PM运行游戏的 PHP、Zend 和 Redis。

我们正在做一个发布服务,我在尝试部署从开发人员那里获得的构建时遇到了问题。我在尝试启动服务器时遇到此错误。

Fatal error: Uncaught exception 'RedisException' with message 'Connection closed' in [no active file]:0 Stack trace: #0 {main} thrown in [no active file] on line 0

我一开始以为是Redis连接。但我尝试了 telnet 并通过简单的套接字编程脚本对 PHP Predis 进行了硬编码以设置/获取 Redis 数据。它正在工作。

所以我试着注释掉每一行代码,然后我到达了 Zend 框架那一行:

    <?php
...
try {
Zend_Session::start();

Game_Db_Db::init(); // <-- This is also failed if I commented out above Zend_Session::start();
} catch (Exception $e) {
echo $e->getMessage() . '<br>';
echo "Error";
}
...
?>

我试着在另一个问题上查找并发现了这一点。

Zend_Session / Zend_Auth randomly throws Error Message ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13)

上面的问题表明问题出在写权限上。但是我的情况不同,因为我使用 Redis 作为 session.save_path="tcp://xx.xx.xxx.xxx:xxxx"而不是本地路径。

正如我之前提到的,我成功地测试了 Redis 设置/获取键值。所以我认为问题可能有所不同。

开发人员正在努力解决这个问题,但是这个单一的问题已经花费了很长时间。

如果您能指出我应该在哪里看的任何想法,那就绰绰有余了。

提前致谢。

最佳答案

我有同样的问题,在我的例子中,我首先检查 ini 设置在一个单独的文件中是否正常工作(没有 Zend Framework)。

<?php
var_dump(ini_get("session.save_handler"));
var_dump(ini_get("session.save_path"));

如果 php.ini 工作正确,请检查 Zend 配置中是否有一些设置,请参阅 http://framework.zend.com/manual/2.0/en/modules/zend.session.global-session-management.html或在 Zend 项目中用 grep 查找“save_path”。

关于php - Zend 无法启动与 Redis 的 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33685452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com