美文网首页
基于nginx的Linux rtmp服务搭建

基于nginx的Linux rtmp服务搭建

作者: 清霜辰 | 来源:发表于2019-12-11 11:19 被阅读0次

    Linux操作:

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

    解压tar xvf nginx-1.15.3.tar.gz

    下载nginx rtmp模块 wget https://github.com/arut/nginx-rtmp-module/archive/v1.2.1.tar.gz

    解压tar xvf v1.2.1.tar.gz

    进入nginx目录cd nginx-1.15.3

    执行:

    #--add-module 指向rtmp模块目录
    ./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1
    

    在这个过程中可能因为环境不同而出现不同错误,比如缺少pcre、openssl等,这时候就需要安装这些库。
    openssl安装,命令:sudo apt-get install openssl libssl-dev
    pcre安装,命令:sudo apt-get install libpcre3 libpcre3-dev
    zlib安装,命令:sudo apt-get install zlib1g-dev

    make&&make install
    编译完成后,安装在当前目录的bin目录下。
    vim bin/conf/nginx.conf 修改为:

    user root;
    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      8081;
            location /stat {
                rtmp_stat all;
                rtmp_stat_stylesheet stat.xsl;
            }
            location /stat.xsl {
                #注意目录
                root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/;
            }
            location /control {
                rtmp_control all;
            }
            location /rtmp-publisher {
                #注意目录
                root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/test;
            }
            
            location / {
                #注意目录
                root /root/ffmpeg/nginx/nginx-rtmp-module-1.2.1/test/www;
            }
        }
    }
    

    其实就是从 nginx-rtmp-module-1.2.1/test/nginx.conf中拷贝。

    端口占用检查: lsof -i:8080

    需要注意的是目录与端口是否被占用,比如我的8080端口被占用,我改为了8081,然后需要开放端口。

    配置完成后,就可以启动nginx了

    在当前目录 执行 bin/sbin/nginx 即可启动

    bin/sbin/nginx -s stop 停止

    一定要在当前目录启动,因为上面的配置 error_log logs/error.log debug; 会去执行命令的目录下查找 logs。

    如果error_log 改成一个绝对路径 那就没关系了。

    在浏览器输入 【IP】:8081

    能访问就表示配置完成了。

    相关文章

      网友评论

          本文标题:基于nginx的Linux rtmp服务搭建

          本文链接:https://www.haomeiwen.com/subject/lpgggctx.html