原因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