Nginx安装nginx-rtmp-module模块

简介

nginx中的模块虽然就是类似插件的概念,但是它无法像VsCode那样轻松的安装扩展。

nginx要安装其它模块必须同时拿到nginx源代码和模块源代码,然后手动编译,将模块打到nginx中,最终生成一个名为nginx的可执行文件。

流程

  • 查看当前nginx 的版本(假设安装位置为:/usr/local/nginx)
  • 下载当前版本的源代码
  • 下载 nginx-rtmp-module模块源代码
  • 重新编译nginx并追加nginx-rtmp-module
  • 将新编译好的 nginx 可执行文件拷贝到当前nginx安装目录(/usr/local/nginx/sbin)

步骤

查看当前已经安装的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

复制代码
wget http://nginx.org/download/nginx-1.18.0.tar.gz


tar -zxvf   nginx-1.18.0.tar.gz

下载nginx-rtmp-module模块源代码

进入到 /home/cml

复制代码
git clone https://github.com/arut/nginx-rtmp-module.git

重新编译nginx

此时,/home/cml 目录下面有两个目录

  • nginx-1.18.0
  • nginx-rtmp-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-rtmp-module
  • 使用configure 配置编译环境
  • 将上面 保存的"arguments 后面的内容"作为configure 的第一个参数
  • 第二个参数为 --add-module=/home/cml/nginx-rtmp-module ,即添加一个模块,模块源代码位置是 /home/cml/nginx-rtmp-module

如果没有出错,执行 编译命令

复制代码
make

编译成功后,在/home/cml/nginx-1.18.0/objs 中会有一个 名为nginx的可执行文件,这个就是编译好的了, 里面包含已经安装的功能和新增加的nginx-rtmp-module,将这个可执行文件拷贝到当前安装目录(/usr/local/nginx/sbin)中就可以了。注意拷贝之前需要停止nginx,否则会报错。

验证nginx-rtmp-module是否安装好了

复制代码
nginx   -V 

若打印的信息中包含nginx-rtmp-module,说明安装好了。

引用

相关推荐
还是大剑师兰特5 天前
解决nginx错误:http://localhost:7000正常,http://localhost:7000/map 报错404
nginx·大剑师
xing-xing5 天前
Docker容器中Nginx站点根目录网页配置访问
nginx·docker
PC2005-cloud5 天前
Nginx 防盗链配置实战:用 referer 模块保护网站静态资源
nginx
PHP实战开发录5 天前
Nginx上传大文件为什么报413
nginx·php·开发
Lsetea6 天前
Nginx报No required SSL certificate was sent:mTLS客户端证书排查
运维·nginx·https·ssl·openssl
szephyr7 天前
HTTPS 证书申请与自动续期:acme.sh + Let‘s Encrypt 完整记录
nginx·https·acme.sh·证书续期
Lsetea7 天前
部署证书后提示“证书名称与输入不匹配”:Safari 报错的三层排查
nginx·https·safari·ssl证书·openssl
打工仔折腾 AI8 天前
FastAPI 从本机到生产服务器:Nginx+Gunicorn+Uvicorn 完整部署实录
人工智能·后端·python·nginx·fastapi·gunicorn
Linux运维技术栈8 天前
如何避免绕过CDN的攻击?基于 CDN 回源请求头鉴权的防御实操与安全性剖析
nginx·安全·cdn
Lsetea8 天前
OpenSSL快速生成域名证书:含SAN的自签命令、验证与排错
nginx·https·ssl证书·openssl·自签证书