使用Nginx转发TCP请求

  • 在平时的开发中,可能有的服务在本地电脑是连接不上的,此时需要一个中间人来作为代理,帮助我们去转发请求
  • 比如现在本地可以链接某一台nginx服务器,域名为www.baidu.com,并且开放了端口8899,那么我们通过这台服务器,来转发我们链接不上的192.168.0.111:6379 redis服务

一、nginx.conf

daemon off;
user www;

worker_processes 8;
worker_rlimit_nofile 102400;

events {
  use epoll;
  worker_connections 102400;
}

include /nginx/conf/tcp.conf;

http {

  client_max_body_size  500M;

  include               mime.types;

  default_type          application/octet-stream;

  server_tokens         off;

  sendfile              on;

  keepalive_timeout     65;

}

二、tcp.conf

  • 这里以转发redis请求为案例:
stream {
  upstream redis {
   # 目标 redis server ip和host
    server 192.168.0.111:6379;
  }
  server {
   # 要监听的外部端口,比如你的域名是www.baidu.com,那么你本地连接redis的时候,host就填www.baidu.com,端口8899
    listen 8899;
    proxy_pass redis;
  }
}

三、本地连接

在本地就可以通过域名+监听的端口,来链接远程的服务192.168.0.111:6379

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值