Nginx服务使用stream模块TCP代理rtmp视频流

搭建环境

centos7.5,nginx-1.12.1

注释

nginx版本建议为1.9版本以上(nginx从1.9.0开始,新增加了一个stream模块,可以使用这个模块)

1.9版本以下nginx tcp代理模块为tcp_proxy模块

安装

nginx下载地址:
http://nginx.org/download/nginx-1.12.1.tar.gz

上传到服务器并解压nginx

  1. tar -zxf nginx-1.12.1.tar.gz

进入解压nginx目录

  1. cd nginx-1.12.1/

安装nginx模块

  1. ./configure --with-stream --with-http_stub_status_module

执行编译

  1. make && make install

检查安装

  1. find / -name nginx
    Nginx服务使用stream模块TCP代理rtmp视频流_第1张图片

将编译好的nginx拷贝到/usr/local/nginx/sbin/nginx(确认覆盖)

  1. cp /root/nginx_rtmp/nginx-1.12.1/objs/nginx /usr/local/nginx/sbin/nginx
    在这里插入图片描述

修改nginx配置文件

  1. vim /usr/local/nginx/conf/nginx.conf
  2. stream {
    upstream backend {
    server www.rtmp1.com:1935;#代理的域名(或者IP)+ rtmp视频服务器默认端口
    }
    server {
    listen 8888;#代理的监听端口
    proxy_connect_timeout 8s;#连接超时时间
    proxy_timeout 24h;#代理超时
    proxy_pass backend;#端口转发
    }
    }

server 后面跟的是rtmp视频服务器IP,我这里是域名,rtmp视频服务器上做了dns域名解析
Nginx服务使用stream模块TCP代理rtmp视频流_第2张图片
stream模块只是起到了代理作用,rtmp相关配置如下
Nginx服务使用stream模块TCP代理rtmp视频流_第3张图片

启动nginx服务

  1. /usr/local/nginx/sbin/nginx

查看进程状态及监听端口

  1. ps -ef | grep nginx
  2. netstat -anpt | grep nginx

Nginx服务使用stream模块TCP代理rtmp视频流_第4张图片
使用vlc进行测试(我这里的rtmp视频服务器是nginx搭建的所以后面跟的是存放视频的路径,根据实际填写)
Nginx服务使用stream模块TCP代理rtmp视频流_第5张图片
Nginx服务使用stream模块TCP代理rtmp视频流_第6张图片

你可能感兴趣的:(nginx,tcp/ip,服务器)