ThinkPHP 链接Redis时报错:
Fatal error: Uncaught RedisException: protocol error, got 'J' as reply type byte in /data/../../../thinkphp/library/think/cache/driver/Redis.php on line 58
![](https://www.codelinux.cn/wp-content/uploads/2021/08/image.png)
![](https://www.codelinux.cn/wp-content/uploads/2021/08/image-1.png)
解决方法:
网上的解决办法是:
修改 protected-mode = yes 改为 no
注释: bind = 127.0.0.1
这个好像都没有效果呢!
总结:
- 检查redis是否开放外网,即: bind 的地址
- 检查程序和RedisServer监听的地址与端口是否一样
- 检查账户密码是否正确
- 关于 protected-mode 这个没有必要修改
吐槽:
这报错信息也太诡异了!我的问题是链接的端口不对,然后修改为正确的端口就可以链接!
可程序的报错却是....上面的,无语啊!