美文网首页
Nginx配置rtmp服务

Nginx配置rtmp服务

作者: charles0427 | 来源:发表于2017-01-10 15:58 被阅读264次

    Windows

    这里转发一个可以一键运行的nginx server,通过node编写,demo里使用grindplayer。
    http://bashell.nodemedia.cn/archives/nodemedia-dev-server.html

    Linux(离线环境)

    下载

    • 服务器受内网限制,ngnix需要的库无法通过wget下载,提供一个所有依赖库的离线下载链接。
      https://github.com/arut/nginx-rtmp-module.git
    • 从github下载nginx-rtmp-module项目
      Linux安装nginx所需包
    • 在配置过程中,多次编译失败,最后总结出是ngnix与依赖库以及rtmp包之间的版本不对应,具体什么ngnix版本对应的openssl和rtmp版本,需要多次尝试。

    环境与版本

    • 环境是SUSE Linux
    • zlib-1.2.8pcre-8.38,来自上面csdn的链接
    • openssl-1.0.2j,一开始使用openssl-fips-2.0.11,因编译遇到提示rtmp中某c文件函数有错,issue里有网友建议换成openssl-1.0.x版本。openssl官网
    • nginx-1.10.2,因nginx-rtmp-module使用的是github上最新版本,作者说支持nginx-1.10.x的规则,于是去官网下了最新stable版nginx-1.10.2。 nginx官网

    配置

    1. 将所有文件导入同一级目录,依次解压
    2. tar zxvf nginx-1.10.2.tar.gz
      tar zxvf pcre-8.38.tar.gz
      tar zxvf openssl-1.0.2j.tar.gz
      tar zxvf zlib-1.2.8.tar.gz
    3. 进入nginx目录,cd nginx-1.10.2
    4. ./configure --prefix=user-defined/nginx --with-pcre=path/to/pcre-8.38 --with-openssl=path/to/openssl-1.0.2j --with-zlib=path/to/zlib-1.2.8 --add-module=path/to/nginx-rtmp-module-master
      -prefix指定安装目录,--add-module添加rtmp模块,后面跟模块的路径
    5. make
      make install
    6. 编译安装中没有error即nginx成功安装,cd前往安装目录,进入conf目录,通过vi打开nginx.conf文件,配置nginx。这里主要添加rtmp server,如下:
    rtmp {
        server {
            listen 1935;
    
            application live {
                live on;
            }
            
            application hls {
                live on;
                hls on;  
                hls_path temp/hls;  
                hls_fragment 8s;  
            }
        }
    }
    

    修改server_name, 即访问的ip
    启动时会提示temp/hls目录不存在,因我项目中目前只要求rtmp,于是将hls的配置删除

    1. cd进入sbin目录,执行nginx,通过netstat -nlp查看对应端口是否被占用(非root用户最好不适用8080类的端口,我改为了7070)

    相关命令

    • 启动:/sbin/nginx
    • 判断配置是否正确: /sbin/nginx -t
    • 重启: /sbin/nginx -s reload

    相关文章

      网友评论

          本文标题:Nginx配置rtmp服务

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