为什么redis-cli -h 127.0.0.1 -p 6379不会报错,但是redis-cli -p 6379 -h 127.0.0.1就报连接拒绝的错误
虚拟机镜像:centos7
连接虚拟机软件:MobaXterm_Personal_22.1
连接虚拟机软件:MobaXterm_Personal_22.1
阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题是 Redis 客户端 redis-cli 连接 Redis 服务端时出现的错误。错误的原因是 Redis 服务端的配置问题。
在 Redis 服务端的配置文件中,通常会指定 bind 选项来指定 Redis 服务端监听的 IP 地址和端口号。例如:
bind 127.0.0.1
这意味着 Redis 服务端只能被监听在 127.0.0.1 地址的客户端连接。
当你使用 redis-cli -h 127.0.0.1 -p 6379 命令连接 Redis 服务端时,客户端会尝试连接到 127.0.0.1 地址的 Redis 服务端,这是允许的。
但是,当你使用 redis-cli -p 6379 -h 127.0.0.1 命令连接 Redis 服务端时,客户端会尝试连接到 6379 端口的 Redis 服务端,但是 Redis 服务端的 bind 选项指定了只能监听 127.0.0.1 地址的连接,这导致连接被拒绝。
解决方法是修改 Redis 服务端的配置文件,添加 bind 0.0.0.0 选项来指定 Redis 服务端监听所有可用的 IP 地址和端口号。
bind 0.0.0.0
或者,你可以使用 redis-cli -h 127.0.0.1 -p 6379 命令连接 Redis 服务端,这样客户端会尝试连接到 127.0.0.1 地址的 Redis 服务端。
无需代码。