nginx反向代理TCP,取RTMP流
一、说明
nginx默认只支持HTTP反向代理,如果需要支持TCP反向代理需添加tcp代理模块:nginx_tcp_proxy_module。
二、原料
1.nginx_tcp_proxy_module
下载地址:
wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip
2.nginx源码
http://nginx.org/download/nginx-1.6.3.tar.gz
三、步骤
1.解压nginx
略
2.解压nginx_tcp_proxy_module
解压至/nginx-1.6.3/src/nginx_tcp_proxy_module
3.patch
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
4.编译&安装
- 1
- 1
如果报错缺少库,则安装相应库,如openssl
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
继续编译安装
- 1
- 2
- 1
- 2
5.修改配置文件
在nginx.conf中添加,模块指令是TCP,它是不属于HTTP框架内的,所以和HTTP{}同级别
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
6.测试
启动nginx
- 1
- 1
启动srs
- 1
- 1
使用ffmpeg推rtmp流到srs服务器(端口1935),然后通过vlc或者其他方式到代理端口8888获取rtmp流.
自测试成功!
通过访问:rtmp://127.0.0.1:7777/live/0 就可以访问到rtmp://10.0.192.82/live/0的流,但是因为是反向代理,所有的流到要经过反向代理服务器转发一次。
Nginx TCP反向代理RTMP流
1万+





