当出现’RedisException’并提示’Redis server went away’的消息时,也可能是因为根本无法连接到Redis服务器

如果你写了以下这样的代码…

$redis = new Redis();
$redis->connect($host, $port);
$hoge_value = $redis_conn->get('hoge_value');

在从Redis获取值的第三行代码中发生了以下异常:
FastCGI发送了stderr:“PHP消息:PHP致命错误:未捕获的异常’RedisException’,消息为’Redis服务器离线’。

我做了很多调查,但是没有找到太多信息,不知道为什么无法获取值。
虽然连接是正常的,但无法获取值的情况我想不到是什么样的。

最終結果是無法連接到Redis。
查看$redis->connect($host, $port)的返回值為false,表示連接失敗。後來發現是因為自己AWS的安全群組設定錯誤,無法連接到對應的Redis。檢查安全群組後成功連接上去。

由于错误消息的描述是”虽然连接成功了,但连接好像去了别的地方”,导致解决问题花费了一些时间。