手把手教你从安装CentOS7.4镜像开始,搭建IoT视频监控系统

摘要:在CentOS7.4服务器版本的环境下安装nginx服务器、配置文件服务器、流媒体服务器 。
本文分享自华为云社区《华为云ECS服务器安装CentOS7.4镜像 , 部署GINX服务器、搭建物联网视频监控系统》 , 作者:DS小龙哥 。
在CentOS7.4服务器版本的环境下安装nginx服务器、配置文件服务器、流媒体服务器 。(1)配置NGINX为HTTP服务器 , 安装rtmp模块 , 完成rtmp视频推流 , 支持缓存视频到本地目录、支持转为HLS流 , 通过浏览器访问直播流 。(2)部署开机自动启动程序:方便设置自己的程序为开机启动 。
一、环境介绍环境介绍: 采用的是华为云的ECS弹性云服务器–镜像安装的CentOS7.4 64位 -----是服务器版 , 非桌面版哦 。在CentOS7.4服务器版本的环境下安装nginx服务器、配置文件服务器、流媒体服务器 。
(1)配置NGINX为HTTP服务器 , 安装rtmp模块 , 完成rtmp视频推流 , 支持缓存视频到本地目录、支持转为HLS流 , 通过浏览器访问直播流 。(2)部署开机自动启动程序:方便设置自己的程序为开机启动 。
二、Centos中安装带rtmp模块的Nginx2.1 新安装的系统可以先安装一些工具yum install -y pcre pcre-devel openssl openssl-devel zlib zlib-devel gcc gcc-c++yum install -y vim wget lsof git zip unzip2.2 获取Nginx二进制源码听说srtmp模块暂时只支持Nginx13-15版本 , 当前就在官网下载Nginx14
wget http://nginx.org/download/nginx-1.14.2.tar.gztar xvf nginx-1.14.2.tar.gz 2.3 获取nginx-rtmp-modulewget https://github.com/arut/nginx-rtmp-module/archive/refs/shenghuo/tags/v1.2.1.tar.gztar xvf v1.2.1.tar.gz2.4 编译nginxcd nginx-1.14.2./configure --add-module=../nginx-rtmp-module-1.2.1/ --with-http_ssl_modulemake && make install#建立软链接ln -s /usr/local/nginx/sbin/nginx /usr/bin特别说明:
如果在配置时报错 , 一般就是缺东西了 , 安装了再配置 。
比如:报错 ./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the mo ....解决:yum -y install pcre-develyum -y install openssl openssl-devel2.5 修改Nginx的配置文件打开/usr/local/nginx/conf/nginx.conf文件 , 在文件最后面加入下面的配置 。rtmp {server { listen 8888;application live {live on; }}}上面8888是rtmp推流和拉流的端口 。
修改nginx.conf之后 , 重启nginx服务:
sudo service nginx restart重启服务之后 , 使用netstat -ltn命令查看TCP监听的端口 , 确认下Nginx的监听端口是否正常 。正常情况 , 一个是我们自己设置的rtmp服务监听端口8888 , 还有一个80是Nginx默认的HTTP服务监听端口 。接下来可以在浏览器里输入本机IP地址:http://127.0.0.1/ , 查看Nginx服务开启状态 。
2.6 设置开机启动wget http://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginxchmod +x /etc/init.d/nginxupdate-rc.d nginx defaults2.7 控制nginx服务的3个命令: 启动、停止、重启service nginx startservice nginx stopservice nginx restart或者 nginx -s reload(运行中生效配置文件)2.8 进行rtmp推流服务器搭建好之后 , 推流和拉流的地址就是: rtmp://<服务器IP地址>:8888/live/<推流存放的目录>例如: rtmp://127.0.0.1:8888/live/xl
2.9 nginx保存推流视频文件如果需要让推流上来的文件保存下来后续进行查看历史文件 , 可以配置nginx进行保存 。
在原来的/usr/local/nginx/conf/nginx.conf配置文件里rtmp模块中增加新的配置:
record all;record_unique on;record_path "./video";#视频缓存的路径record_suffix -%Y-%m-%d-%H_%M_%S.flv;

经验总结扩展阅读