# 快速配置Nginx转发TCP和UDP协议
前置条件
本文使用nginx版本为1.16.1
已经编译安装stream相关模块
已经安装upstream模块
不知道怎么安装的可以参考这篇
如何通过nginx转发TCP和UDP协议
警告
本文只保证快速配置测试可用,切勿直接用于生产环境
# 前言
使用nginx转发时,如果一个服务包含多个协议(如:http,websocket,udp)
那么直接使用 http
模块就会变得非常复杂
这时我们引用 stream
模块进行配置
# 开始配置
注意
stream模块不属于 http
内部,所以以下配置内容需要和http{}
平级
且编写在events
模块之后
修改 nginx.conf
配置文件,在events
模块下方添加如下信息
或在路径/usr/share/nginx/modules/
下新建xxx.conf
文件
(modules文件路径可查看nginx.conf下是否包含includes
)
- 快速配置
stream {
upstream service {
server 127.0.0.1:8080; # 127.0.0.1:8080 为需要转发的服务
}
# 监听 80 端口
server {
listen 80 reuseport;
listen [::]:80 reuseport;
proxy_pass service; # service为upstream定义的名称
}
}
# 重启
配置完成后重启nginx服务即可
代码语言:javascript复制./nginx -s reload