Nginx流媒体服务器搭建(RTMP)

前言:

目前比较流行直播,相信大家有所耳闻,要想完成直播客户端以及推送端,需要在服务器上搭建Nginx以及加入RTMP模块进行编译。这样能实现快速搭建一个流媒体服务器,便于开发者快速测试移动端的直播功能。
直播流程:


Nginx流媒体服务器搭建(RTMP)_第1张图片
image.png
步骤:

1、下载Nginx

wget http://nginx.org/download/nginx-1.15.3.tar.gz

2、解压:

tar xvf nginx-1.15.3.tar.gz

3、下载nginx rtmp模块:

wget https://codeload.github.com/arut/nginx-rtmp-module/tar.gz/v1.2.1

4、解压:

tar xvf v1.2.1

5、进入nginx目录:

cd nginx-1.15.3

6、执行:

#--add-module 指向rtmp模块目录(这里是添加RTMP模块)
./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1

你会看到一个MakeFile文件,那么编译的机会来了
7、编译安装nginx:

make
make install

编译完成后,安装在当前目录的bin目录下。

cd bin/conf
vim nginx.conf 修改为(端口号自己设置):

worker_processes  1;

error_log  logs/error.log debug;

events {
    worker_connections  1024;
}

rtmp {
    server {
         #注意端口占用
        listen 1935;
        application myapp {
            live on;
            #丢弃闲置5s的连接
            drop_idle_publisher 5s;
        }
    }
}
http {
    server {
        #注意端口占用
        listen      8080;
        location /stat {
            rtmp_stat all;
            rtmp_stat_stylesheet stat.xsl;
        }
        location /stat.xsl {
            #注意目录
            root /root/live/nginx-rtmp-module-1.2.1/;
        }
        location /control {
            rtmp_control all;
        }
        location /rtmp-publisher {
            #注意目录
            root /root/live/nginx-rtmp-module-1.2.1/test;
        }
        
        location / {
            #注意目录
            root /root/live/nginx-rtmp-module-1.2.1/test/www;
        }
    }
}

其实就是从 nginx-rtmp-module-1.2.1/test/nginx.conf中拷贝。
端口占用检查: lsof -i:8080
需要注意的是目录与端口是否被占用,比如我的8080端口被占用,我改为了8081,然后需要开放端口。

Nginx流媒体服务器搭建(RTMP)_第2张图片
image.png

然后点击配置规则,在新页面点击添加安全组规则,开放8080端口,然后确定,就可以了。


Nginx流媒体服务器搭建(RTMP)_第3张图片
image.png

配置完成后,就可以启动nginx了
在当前目录 执行 bin/sbin/nginx 即可启动
bin/sbin/nginx -s stop 停止
一定要在当前目录启动,因为上面的配置 error_log logs/error.log debug; 会去执行命令的目录下查找 logs。
如果error_log 改成一个绝对路径 那就没关系了。
在浏览器输入
【IP】:8081
能访问就表示配置完成了。

你可能感兴趣的:(Nginx流媒体服务器搭建(RTMP))