当前连接使用的是Jedis,测试的服务器是本机配置的虚拟机,地址为192.168.43.10,
虚拟机系统为CentOS 7.0,
redis配置文件已经进行更改,使用7000端口执行redis服务,测试用例如下:
![fe0f8b5aeccbd8fab68f76b434ce40ce.png](https://img-blog.csdnimg.cn/img_convert/fe0f8b5aeccbd8fab68f76b434ce40ce.png)
测试开始时,出现连接失败的问题:
看最后一个caused by:
![efad6a75d57259e2ae76d2a737324d57.png](https://img-blog.csdnimg.cn/img_convert/efad6a75d57259e2ae76d2a737324d57.png)
像这种情况,出现的原因可能有两种:
- 其一,在redis的配置文件中,没有配置局域网的访问权限
- 其二,被访问方的服务器的7000端口不允许访问
针对第一种情况,具体解决方案如下:
打开配置文件redis.conf,搜索 “ bind ”,你会看到这一句:
![c31f4aa9852327155f59c3aa98026d65.png](https://img-blog.csdnimg.cn/img_convert/c31f4aa9852327155f59c3aa98026d65.png)
这个bind配置的是,允许以这些地址来访问我们的reids,配置之前是只有127.0.0.1的,那只需要写上我们服务器的地址就好了,我这里也就是192.168.43.10,注意,写的是服务器自己的地址,那么在这个配置之后,与其同局域网的电脑也就可以访问这个redis了
记得在改完配置文件后,重启redis,使得配置生效。
针对第二种情况,具体解决方案:
首先运行: firewall-cmd --query-port=7000/tcp 以检测我们的端口是不是被允许访问的
这里很明显:
![e38f4e443ce71e21a612af8e0ae2d8a5.png](https://img-blog.csdnimg.cn/img_convert/e38f4e443ce71e21a612af8e0ae2d8a5.png)
7000端口不允许外界访问。
所以我们需要打开端口:
firewall-cmd --zone=public --add-port=7000/tcp --permanent
![378c6b07db8063283e8c63e8f20450f7.png](https://img-blog.csdnimg.cn/img_convert/378c6b07db8063283e8c63e8f20450f7.png)
然后重启防火墙即可!
此时再次访问我们的redis:
![071a785e79e906d4b2b28584d5aa680e.png](https://img-blog.csdnimg.cn/img_convert/071a785e79e906d4b2b28584d5aa680e.png)
nice~