当前位置:Gxlcms > PHP教程 > nginx反向代理TCP,取RTMP流

nginx反向代理TCP,取RTMP流

时间:2021-07-01 10:21:17 帮助过:35人阅读

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

cd /usr/wkdir/nginx-1.6.3patch -p1 < src/nginx_tcp_proxy_module/tcp.patch

4.编译&安装

./configure --add-module=src/nginx_tcp_proxy_module-master

如果报错缺少库,则安装相应库,如openssl

ubuntu下解决办法:

apt-get install openssl

apt-get install libssl-devcentos下解决办法:

yum -y install openssl openssl-devel

继续编译安装

makemake install

5.修改配置文件
在nginx.conf中添加,模块指令是TCP,它是不属于HTTP框架内的,所以和HTTP{}同级别

tcp {
    upstream proxy_name {
        # simple round-robinserver localhost:1935;#需要代理的端口#check interval=3000 rise=2 fall=5timeout=1000;#check interval=3000 rise=2 fall=5timeout=1000#check interval=3000 rise=2 fall=5timeout=1000#check_http_send "GET /HTTP/1.0\r\n\r\n";#check_http_expect_alive http_2xxhttp_3xx;
    }

    server {
        listen 8888; #代理8888端口        proxy_pass proxy_name;
    }
}

6.测试
启动nginx

./usr/local/nginx/sbin/nginx

启动srs

./usr/local/srs/objs/srs -c conf/srs.conf

使用ffmpeg推rtmp流到srs服务器(端口1935),然后通过vlc或者其他方式到代理端口8888获取rtmp流.

自测试成功!

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
  • ').text(i)); }; $numbering.fadeIn(1700); }); });

    以上就介绍了nginx反向代理TCP,取RTMP流,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

  • 人气教程排行