应用程序远程连接redis失败原因(Linux)

原因1 :redis服务端口(默认6379)没有对外开发,被防火墙拦截了

            其实很多远程无法访问的情况都是由于端口没有对外开放造成成,如你要访问部署在阿里云上的mysql时,需要到阿里云的控制台开放对应的端口(默认为3306) 

原因2:redis本身默认设置不允许外网访问,需要修改配置文件

本人使用的Linux系统是Centos 7  64位

针对原因1的解决方案是:

开放端口,我启动redis使用redis默认的端口6379,如果你启动redis时修改过端口,则需要根据你实际的端口进行设置

步骤:

1  切换到root用户,并输入命令:firewall-cmd --query-port=6379/tcp  确认端口是否开放

从上图中返回no可以看出,端口6379并没有对外开放

2  输入命令: firewall-cmd --get-active-zones  拿到zone名称

3  输入命令:firewall-cmd --zone=public --add-port=6379/tcp --permanent,永久开放6379端口

4 输入命令:firewall-cmd --reload ,重启防火墙

5 再次查看端口是否开放了:firewall-cmd --query-port=6379/tcp

可以看到返回yes,表明端口开放成功

原因2的解放方案:

1  先关掉redis服务(如果开着的话)

1.1 输入命令:ps -aux |grep redis ,拿到redis的进程号

从上图可以看出,我的redis的进程号为7277,你的一般都不会和我的相同

1.2   根据进程号7277,关闭redis

2  修改配置文件,如配置文件名名称为redis.conf(没修改过就是这个名称),如下:

(1)修改redis.conf 文件,把bind 127.0.0.1这一行注释掉。

(2)修改redis.conf 文件,protected-mode 要设置成no

3 以该配置文件启动redis

发布了66 篇原创文章 · 获赞 48 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/zxy13826134783/article/details/100526973