首页 > 极客资料 博客日记
安装nginx-http-flv-module模块
2024-09-23 17:00:04极客资料围观19次
简介
nginx中的模块虽然就是类似插件的概念,但是它无法像VsCode那样轻松的安装扩展。
nginx要安装其它模块必须同时拿到nginx源代码和模块源代码,然后手动编译,将模块打到nginx中,最终生成一个名为nginx的可执行文件。
nginx-http-flv-module是什么
nginx-http-flv-module是nginx的一个模块(拓展插件),它基于 nginx-rtmp-module 二次开发,拥有 nginx-rtmp-module 全部的功能 HTTP-FLV播放,GOP缓存,虚拟主机,RTMP/HTTP-FLV纯音频支持,HLS播放等等 兼容性:要求nginx的版本大于等于1.2.6
流程
查看当前nginx 的版本(假设安装位置为:/usr/local/nginx) 下载当前版本nginx的源代码 下载 nginx-http-flv-module 模块源代码 重新编译nginx并追加nginx-http-flv-module 将新编译好的 nginx 可执行文件拷贝到当前nginx安装目录(/usr/local/nginx/sbin)
注意事项
由于nginx-http-flv-module包含了 nginx-rtmp-module 模块,所以不可将 nginx-http-flv-module 和 nginx-rtmp-module 同时编译,当我们编译完 nginx-http-flv-module 之后,其实就已经拥有了 nginx-rtmp-module 的完整功能。
详细步骤
查看当前已经安装的nginx版本
[root@bogon sbin]# ./nginx -V
nginx version: nginx/1.18.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module
V:小v仅打印版本号,大V既打印版本号,也打印扩展信息,这里要使用大V 拿到版本号的目的是待会要下载该版本的源代码 注意保存打印内容中的 arguments 后面的内容,后面编译会用到
下载对应版本的nginx源代码
找一个目录,假设为 /home/cml
下载 1.18.0 版本的nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz
下载nginx-http-flv-module模块源代码
还是进入到 /home/cml ,下载 nginx-http-flv-module 模块的源代码
git clone https://github.com/winshining/nginx-http-flv-module.git
这里需要注意源代码所在目录的名称和目录的层级。确保在 /home/cml 目录下有一个名为 nginx-http-flv-module 的目录,而目录的内容如下:
[root@bogon nginx-http-flv-module]# tree -L 1
.
├── AUTHORS
├── config
├── dash
├── doc
├── hls
├── LICENSE
├── ngx_http_flv_live_module.c
├── ngx_http_flv_live_module.h
......
重新编译nginx
此时,/home/cml 目录下面有两个目录
nginx-1.18.0 nginx-http-flv-module
进入 nginx-1.18.0 目录,可以看到有一个 configure 可执行文件,执行如下命令
./configure --prefix=/usr/local/nginx --with-http_dav_module --with-http_stub_status_module --with-http_addition_module --with-http_sub_module --with-http_flv_module --with-http_mp4_module --with-pcre --with-http_ssl_module --with-http_gzip_static_module --add-module=/home/cml/nginx-http-flv-module
使用configure 配置编译环境 将上面 保存的“arguments 后面的内容”作为configure 的第一个参数 第二个参数为 --add-module=/home/cml/nginx-http-flv-module ,即添加一个模块,模块源代码位置是 /home/cml/nginx-http-flv-module
如果没有出错,执行 编译命令
make
编译成功后,在/home/cml/nginx-1.18.0/objs 中会有一个 名为nginx的可执行文件,这个就是编译好的nginx了, 里面包含已经安装的功能和新增加的nginx-rtmp-module,将这个可执行文件拷贝到当前安装目录(/usr/local/nginx/sbin)中就可以了。
注意拷贝之前需要停止nginx,否则会报当前文件繁忙,无法覆盖的错误。
验证nginx-http-flv-module是否安装好了
nginx -V
若打印的信息中包含nginx-http-flv-module,说明安装好了。
引用
https://github.com/winshining/nginx-http-flv-module/blob/master/README.CN.md
本文使用 mdnice 排版
标签:
相关文章
最新发布
- Nuxt.js 应用中的 prerender:routes 事件钩子详解
- 【问题解决】Tomcat由低于8版本升级到高版本使用Tomcat自带连接池报错无法找到表空间的问题
- 【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit
- 六、Spring Boot集成Spring Security之前后分离认证流程最佳方案
- 《JVM第7课》堆区
- .NET 8 高性能跨平台图像处理库 ImageSharp
- 还在为慢速数据传输苦恼?Linux 零拷贝技术来帮你!
- 刚毕业,去做边缘业务,还有救吗?
- 如何避免 HttpClient 丢失请求头:通过 HttpRequestMessage 解决并优化
- 让性能提升56%的Vue3.5响应式重构之“版本计数”