网站首页 > 技术教程 正文
Nginx一般用在HTTP的转发,TCP的转发大都会使用HAProxy。工作中遇到一个需求,用到了Nginx服务作为TCP转发。场景是这样,数据采集设备通过公网将数据推送到后端应用服务,服务部署在业主的IDC中,不能对外暴露,有现成的Nginx服务器部署在DMZ中,充当数据转发服务,拓扑如下:
Nginx的配置如下:
stream {
upstream backend {
server 10.0.0.2:8000 weight=1 max_fails=2 fail_timeout=60s;
}
server {
listen 6020;
proxy_connect_timeout 1s;
proxy_pass backend;
}
}
其中10.0.0.2是后端应用服务器的IP地址。这样推送服务器就可以使用Nginx服务器的公网地址+6020端口访问到后端应用服务器。
上面的配置对于后端应用服务是非HTTP的TCP服务和HTTP服务都适合。如果后端服务是HTTP服务,也可以使用下面的配置,
http {
......
server {
listen 6020;
server_name proxy.example.com;
location / {
proxy_pass http://backend.example.com;
proxy_redirect off;
}
}
}
这里有个问题,当推送服务器使用proxy.example.com这个域名访问进来的时候,后端应用服务器看到的是哪个主机头呢?答案是backend.example.com,如果这不是你想要的,可以使用Nginx的“proxy_set_header”指令。
希望这篇文章能帮助到你!
猜你喜欢
- 2024-10-10 Nginx和Firewall都可以实现四层转发,你喜欢哪一个?
- 2024-10-10 nginx做转发时,带下划线字段的header内容丢失
- 2024-09-14 NGINX 应用性能优化指南(第二部分):反向代理缓冲
- 2024-09-14 10《Nginx 入门教程》Nginx 的反向代理(上)
- 2024-09-14 Kubernetes中如何转发请求到集群外?
- 2024-09-14 Nginx 全面攻略:动静分离、压缩、缓存、黑白名单、跨域、高可用
- 2024-09-14 Portainer实用教程Portainer如何使用 Nginx 容器实现端口转发?
- 2024-09-14 Nginx TCP代理转发和负载均衡(nginx代理tcp转http)
- 2024-09-14 记一次nginx无法转发到后端的问题
- 2024-09-14 Nginx的请求数据处理流程(nginx的请求数据处理流程是什么)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)