我这边安装的是nginx-http-flv-moudle,加上nginx-accesskey给m3u8防盗链
首先准备工作,把需要的两个模块用git下下来,一般保存在 /www/server/这个目录下面
cd /www/server
git clone https://github.com/winshining/nginx-http-flv-module.git
git clone https://github.com/Martchus/nginx-accesskey.git
没装git先去安装git,git安装就不多赘述了。
然后给nginx添加模块 若没装过nginx,先下载宝塔的nginx安装脚本
cd /www/server/panel/install/
wget http://download.bt.cn/install/0/nginx.sh
编辑安装脚本编辑可以用vim不熟练的也可以直接用宝塔控制面板处的在线编辑文件,找到对应的添加模块位置,把我们准备好的两个模块加入进去
--add-module=/www/server/nginx-http-flv-module --add-module=/www/server/nginx-accesskey
大概在289行左右,./configure --user=www --group=www --prefix=${Setup_Path} ${ENABLE_LUA} 在这后面添加上面的代码
添加好之后,执行下安装脚本
sh /www/server/panel/install/nginx.sh install 1.22
install之后跟的是nginx版本,请根据需要选择
安装完成后用命令 nginx -V即可查看模块是否已经安装好。
安装完nginx之后你还需要配置一下才能使用
到软件商店找到nginx,点击设置,在点击配置修改,在events结束下方输入rtmp配置
rtmp {
server {
listen 1935;
chunk_size 4000;
notify_method get;
application yangchu {
live on;
hls on;
hls_path /xxx/; #hls文件保存目录
hls_fragment 5s;
hls_playlist_length 5;
allow play all;
on_publish http://xxxx; #推流时鉴权地址
on_publish_done http://xxxx; #推流结束回调地址
}
}
}
重启nginx,这一步很重要,修改配置后一定要重启,否则会不生效。
hls开启后推流会生成m3u8文件,由于flash被淘汰,浏览器现阶段无法直接拉流rtmp,可以使用hls.js播放m3u8
简单使用nginx-accesskey做下防盗链,配置如下
location ~ /xxx/ {
accesskey on; #开启功能
accesskey_hashmethod md5; #加密模式md5或sha-1
accesskey_arg sign; #参数键值 sign=xxxx
accesskey_signature "xxx$remote_addr"; #加密内容 xxx自定义,$remote_addr 访问者ip
}
使用ngx_http_secure_link_module做防盗链
location ~ /xxx/ {
secure_link $arg_sign,$arg_time;
secure_link_md5 "xxx$remote_addr$arg_time"; #xxx为自行设置的密钥
if ($secure_link = "") {
return 403;
}
if ($secure_link = "0") {
return 404;
}
}