安装nginx的rtmp扩展
在需要使用Nginx进行实时流媒体传输等场景时,安装RTMP模块是一个有效的解决方案。通过该模块,Nginx能够支持RTMP协议,实现视频直播等功能。
一、直接下载预编译版本
最简单的方式是查找已经编译好的包含RTMP模块的Nginx版本。许多云服务提供商或者第三方社区会提供这样的版本。
以阿里云为例,在其官网上可以找到适用于不同操作系统的Nginx版本,并且可以选择是否包含RTMP模块。这种方式不需要我们自己动手编译,但缺点是灵活性较差,无法对Nginx或RTMP模块做深度定制。
二、源码编译安装
-
获取源码
从Nginx官网下载稳定版的Nginx源码压缩包,同时到GitHub上下载nginx-rtmp-module源码(https://github.com/arut/nginx-rtmp-module)。例如:
bash
wget http://nginx.org/download/nginx-1.21.6.tar.gz
git clone https://github.com/arut/nginx-rtmp-module.git
-
配置编译选项
解压Nginx源码后进入目录,添加RTMP模块进行配置。这里假设将Nginx安装到/usr/local/nginx目录下:
bash
tar -zxvf nginx-1.21.6.tar.gz
cd nginx-1.21.6
./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module
-
编译与安装
执行以下命令完成编译和安装:
bash
make
sudo make install
-
配置Nginx支持RTMP
编辑Nginx配置文件(默认路径为/usr/local/nginx/conf/nginx.conf),添加RTMP相关配置:
```bash
rtmp {
server {
listen 1935; #监听端口
chunk_size 4096;application live { live on; record off; #不保存录制文件 }
}
}
```
三、利用包管理器安装(以CentOS为例)
对于Linux系统,特别是像CentOS这样的发行版,可以借助yum等包管理器。不过需要注意官方源可能没有包含RTMP模块,这时候可以添加第三方源。
bash
sudo yum install epel-release
sudo yum install nginx-rtmp
以上就是关于安装Nginx RTMP扩展的方法,根据实际需求和个人技术能力选择合适的方式即可。