前言
本节内容是关于实现nginx代理访问redis服务,由于在实际生产开发环境中,我们并不想将我们的中间键服务暴露在公网环境中,或者只能在内网环境中使用,例如本节内容,我们将redis安装到本地环境,但是又有需要临时在公网环境查看我们的redis数据,那该如何解决这个问题呢?假设A、B俩台服务器,在同一局域网内,A服务器只能内网访问,安装了redis服务,B服务器可以外网访问,那就可以在B服务器安装nginx服务,通过nginx代理转发我们的内网redis服务,这样就是可以实现临时的内网服务访问。通过nginx代理redis服务,主要使用的是nginx的stream模块。关于redis服务与nginx服务安装,请参考作者往期博客内容。
正文
- 安装stream模块
①进入nginx编译目录
②配置stream模块到指定目录
./configure --prefix=/opt/nginx --with-stream
③编译安装
make && make install
- 开启redis服务
①开启redis服务
②开放redis6379端口访问或者直接关闭防火墙
#开放端口访问 firewall-cmd --permanent --add-port=6379/tcp #重新加载防火墙策略 firewall-cmd --reload #关闭防火墙 systemctl stop firewalld
③ip地址
- 在nginx.conf配置文件中配置redis代理访问
①进入nginx配置文件目录
②配置添加redis代理,要保证我们的nginx所在的服务器能够访问redis服务器的地址和端口192.168.110.95:6379
#redis代理测试 stream { upstream redis { #redis真实访问地址 server 192.168.110.95:6379 max_fails=3 fail_timeout=30s; } server { #外网监听地址 listen 2000; #代理连接超时时间 proxy_connect_timeout 5s; #代理超时时间 proxy_timeout 300s; #代理名称 proxy_pass redis; } }
③检查nginx配置文件
④重启nginx
- 测试nginx代理访问redis
①nginx服务地址
②使用redisinsight连接工具连接redis
③连接成功
结语
至此,关于nginx代理访问redis服务的内容到这里就结束了,下期见。。。