安装cdn节点
系统要求
系统要求:CentOS 7+
,Debian 8+
,Ubuntu 16+
(推荐),AlmaLinux 8+
,Rocky Linux 8+
。
如果你的切片访问量比较大,那么服务器的cpu
即配置尽量好点,且多用几台服务器提供cdn
,不然负载多cdn
服务器容易卡。
友情提示
注意:BBR建议在新装系统的服务器上安装,毕竟超小概率会造成换内核访问不了服务器。
如果你的服务器在中国大陆以外,包括中国香港,中国台湾,建议先安装BBR
,可优化TCP
连接,尽可能让用户流畅的观看视频。
使用SSH
客户端,比如Xshell
软件,登录服务器,再使用命令:
#如果第一行命令出现wget: unable to resolve host address报错,则解决方法看后面。
wget --no-check-certificate -O /opt/bbr.sh https://github.com/teddysun/across/raw/master/bbr.sh
chmod 755 /opt/bbr.sh
/opt/bbr.sh
该脚本会自动给你更换BBR
内核,并开启BBR
,安装完成后会自动重启。
安装源码
提示:如果你使用的EFV高级版,则防盗链设置的 禁止ts下载需要关闭,才能缓存。
首先使用SSH
客户端,比如Xshell
软件,登录服务器,再使用命令:
#下载脚本
wget --no-check-certificate -O '/tmp/cdn-node.sh' 'https://download.zhuanma.org/moeapp/efvcdn/cdn-node.sh'
#运行前请将后面1个参数修改成自己的,即源码安装路径/home,路径自定义,为绝对路径写法,不存在会自动创建
bash /tmp/cdn-node.sh /home
配置和启动
编辑配置文件,如果我的节点安装目录为/home/cdn-node
,则配置文件为/home/cdn-node/config/config.js
,只编辑该文件即可。
1、配置需要加速的EFV高级版域名
#将该域名设置成你的EFV高级版绑定域名,可以为域名,也可以为ip:3000,且都需要能访问。
efvDomain: 'http://127.0.0.1:4000',
或
efvDomain: 'https://efv.efvcms.com',
这里推荐使用ip:3000
,效果可能会好点。
2、配置CDN的apiKey
#自行设置,随便设置
apiKey: 'iqi360bytheway'
3、配置防盗链
#防盗链配置,格式如下,一行一个网址,结尾用英文,分开,即切片只能被此处的网站引用播放;反之留空则默认切片可以被所有网站引用播放
antiurls: [
'play1.efvcms.com',
'play2.efvcms.com'
],
注意,如果设置防盗链后,你播放不了切片,则建议先不设置防盗链。
4、配置缓存时间
#缓存时间,默认单位分钟,如设置60,即自动清理60分钟没有使用过的切片缓存
keeptime: 60
最后编辑好了后,使用以下命令启动:
#进入源码目录
cd /home/cdn-node
#环境生效
source /etc/profile
#启动程序
pm2 start ecosystem.config.js --env production
#设置开机自启
pm2 save
pm2 startup
#验证是否运行成功,返回Hello World!信息即安装成功
curl 127.0.0.1:3888
最后访问地址就是服务器ip:3888
,接下来要正常使用需要绑定一个域名,继续看左侧文档绑定域名。
特别注意
有时候会因为系统原因,会导致数据库新建失败,从而使cdn
运行异常,也就是拉取缓存的时候,会出现504
超时错误,这时候使用以下命令:
#将下面命令一起复制进SSH客户端运行
cat <<EOF > createdb
use efvcdn
db.createUser( { user: "efvcdn", pwd: "efvcdn", roles: [ { role: "readWrite", db: "efvcdn" } ] } )
EOF
mongo < createdb && rm -rf createdb
最后再运行命令重启生效:
pm2 reload all