这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

CMS部分功能详解

CMS布局说明及页面修改,用户组说明及设置,P2P加速,剧集、图集、公告、广告等相关功能使用教程。

1 - CMS布局说明及相关设置

了解CMS页面布局说明,及站点标题、logo、首页公告、导航页、幻灯片推荐、页脚、默认语言等设置。

以前的几套旧模板已弃用,现在只使用一套projectz模板,且所有页面的封面都是用的封面2,演示站可参考相关布局:点击查看

下面只列举一些需要注意的板块,其它就不说了。

首页顶部板块

左上角标题直接在后台CMS设置,填入站点名称即可;logo修改需要编辑模板文件views/projectz/cmslayout.jade,修改以下代码:

#自行找到以下代码,/img/uikit-logo.svg为显示的log
img.uk-margin-small-right(uk-svg='', src='/img/uikit-logo.svg', hidden='true')

注意制作logo需要用svg图片,自行百度制作方法,然后替换public/img/uikit-logo.svg文件即可。

首页导航板块

导航除了几个固定的,其它都可以自定义,导航文件默认路径config/navbar.js,参考示例:

#比如我们可以将几个重要的分类、标签放到板块
module.exports = {
    navbar: [{
    entitle: 'Home',
    cntitle: '首页',
    tctitle: '首頁',
    href: '/'
    }, {
    entitle: 'Anime',
    cntitle: '动漫',
    tctitle: '動漫',
    href: '/category/动漫'
}, {
    cntitle: '剧集',
    entitle: 'Tvs',
    tctitle: '劇集',
    href: '/category/剧集'
}]
}

多个导航之间用英文逗号,分开,格式和上方一样,模仿下就行了,参数详解:

英文导航名称变量entitle如:entitle: 'Home',
简体导航名称变量cntitle如:cntitle: '首页',
繁体导航名称变量tctitle如:tctitle: '首頁',
导航所指向的访问路径变量href,如:href: '/'

修改后,使用命令pm2 reload efvcms重启生效。

首页顶部公告板块

公告前往CMS相关公告管理设置就行了,如果不设置则不会显示公告;设置多个会轮流滚动。

首页幻灯片推荐板块

电影推荐可前往转码相关视频管理,操作全部选项的推荐即可;剧集推荐可前往CMS相关剧集管理,操作选项的推荐即可。

最少需要推荐8个以上的视频才能铺满幻灯片推荐板块,且会优先显示最新的推荐数据。

页脚板块

底部也就是页脚,分3部分,如下:

最左侧是站点名称和站点描述,在EFV高级版后台,CMS设置那里填写。

中间和右侧,分别为相关(友情)链接和联系方式,可修改views/projectz/cmslayout.jade,如下:

div(style="max-width: 500px;")
    h5 #{__('link type')}
    div.uk-flex.uk-flex-wrap
        a.uk-padding-small.uk-padding-remove-left(href="#") URL 1
        a.uk-padding-small.uk-padding-remove-left(href="#") URL 2
        a.uk-padding-small.uk-padding-remove-left(href="#") URL 3
        a.uk-padding-small.uk-padding-remove-left(href="#") URL 4
        a.uk-padding-small.uk-padding-remove-left(href="#") URL 5
div
    h5 #{__('contact type')}
    p email:#@gmail.com

#改成友情链接的域名、URL 1等为网站名称,如果你觉得友情链接过多或者过少,还有联系方式过少,可以进行删除或者复制增加,可自行修改。

如果你想更改相关链接联系我们的文字,可以编辑语言文件夹,简体中文locales/cn.json,英文locales/en.json,繁体locales/tc.json,搜索修改:

#中文
"link type": "相关链接",
"contact type": "联系我们"

#英文
"link type": "Related Links",
"contact type": "Contact Us"

#繁体
"link type": "相關鏈接",
"contact type": "聯繫我們"

修改后面的描述,然后使用命令pm2 reload efvcms重启生效。

播放页视频推荐

播放页面视频推荐板块是根据分类标签进行推荐,如果你的视频都没有设置过分类标签,则不会推荐相关视频,推荐算法如下:

提示:推荐会根据当前观看的视频和全部视频的分类标签、地区、演员、导演、编剧综合命中数排序,命中率越高,也就是越接近当前播放的视频;然后依次排序推荐展示出来,方便用户选择自己感兴趣的视频。

展示图如下:

封面展示尺寸说明

目前所有页面的封面都是用的封面2,默认使用横屏尺寸展示,效果图如下:

如果你的视频都是美剧,韩剧,动漫,也就是有这些视频的海报图,也可通过详情编辑的豆瓣接口获取,可前往CMS设置将使用竖屏封面开关打开,竖屏展示图如下:

最后没有海报的,就直接默认横屏尺寸即可,有海报的,可根据实际情况开启竖屏封面。

修改模板默认显示语言

目前安装的时候,默认使用简体中文,还可以修改成繁体、英文,修改方法如下:

编辑config/auth.js文件,修改该参数defaultlocale: "cn"cn为简体中文,en为英文,tc为繁体,语言文件夹为locales,最后使用命令pm2 reload efvcms重启程序生效。

2 - 用户组说明及推荐设置

这里会说下普通、付费用户组、批量免费、VIP限定分类、积分点播、试看及推荐几种常用的用户组设置。

用户组说明

关于用户组,这里只简单说下,如下:

1、分辨率观看权限向下兼容,即处于720P分辨率用户组中的所有用户可同时观看720P、360P和240P。
2、用户注册后,默认分配到积分为0的普通用户组,即至少需要一个积分为0的用户组,不然会注册不了。
3、付费用户组的观看权限优先于普通用户组,付费用户组时长到期后,观看权限会回到默认的普通用户组。
4、用户点播购买视频后,可永久拥有该视频的全部分辨率完整播放权限。

推荐设置

提示:这里列举4种主要的设置方案,可通过传送门快速查看,然后自行修改适合自己的方案。

方案一:给任何人都免费提供视频观看 ⇒ 传送门

方案二:非登录用户只能试看N秒视频,登录用户可以免费观看完整视频 ⇒ 传送门

方案三:非登录和已登录的普通用户只能试看N秒视频,通过付费点播或者直接购买VIP会员观看全部完整视频 ⇒ 传送门

方案四:非登录用户只能试看N秒视频,已登录的普通用户可以观看视频的最低分辨率完整版,通过付费点播或者直接购买VIP会员观看高清完整视频 ⇒ 传送门

在这4种常用设置基础上,还可以结合批量免费VIP限定分类,且这里详细说下,下面的权限参考就不提了,自行发挥,大致如下:

#以下2个功能,需配合试看功能,可搭配上述方案。
批量免费:批量给视频设置免费后,这些视频会跳过各种权限设置,并免费给任何用户观看,可随时关闭。
限定分类:如果VIP用户组设置过限定分类,那么该VIP会员可以观看这些分类完整视频;不在这些分类的视频,依然要经过设置的权限判断,适用于阶级会员。

注意免费只支持给视频设置,如果是剧集的话,可以给剧集里面所有单集都批量设置下;限定分类只支持视频管理处的分类,不支持剧集管理的分类,如果是剧集的话,可以在视频管理处给剧集里面所有单集都依次设置下指定分类。

批量免费设置步骤

提示:建议将免费的视频归到同一个分类,并将该分类命名免费视频,方便用户查找。

前往程序后台 ⇒ 进入视频管理,筛选出想免费的分类或随机视频,批量选择,点击下方批量设置免费,进行关闭或开启即可。

开启和关闭是立即生效的,可以根据自己需求进行调整。

提示:这里顺便说下如何查看那些视频是否免费及状态筛选

前往视频管理,先去标题栏把是否免费调出来,方便标题栏查看。

然后点击其它筛选,选择已设置未设置即可。

最后可以批量进行相关操作了。

方案一

提示:程序安装后,默认是该方案,无需调整,或自己微调整也行。

需要开启的功能

CMS设置】处CMS+会员系统+支付系统功能需要开启,开启试看功能需要关闭。

用户组设置

这里只需要给所有普通用户组积分均设置为0即可,也就是不需要任何积分权限就可以观看。

用户组设置截图参考

方案二

需要开启的功能

CMS设置】处CMS+会员系统+支付系统+开启试看功能需要开启;试看时长自行设置,实际时长有误差为正常现象。

用户组设置

这里给普通用户组的原画设置积分为0,其它分辨率所需积分均大于0即可。

由于用户注册登录后,默认划分到积分为0的用户组,这里只有原画0,所以默认划分到原画用户组,而原画权限最高,即登录拥有全部分辨率观看权限。

用户组设置截图参考

方案三

需要开启的功能

CMS设置】处CMS+会员系统+支付系统+积分点播+开启试看功能需要开启;试看时长自行设置,实际时长有误差为正常现象。

用户组设置

提示:将高分辨用户组积分设置无限大就是防止用户靠签到等自然升级,必须购买会员用户组或点播,才能观看完整视频。

先给现分辨率中的最低到最高分辨率的用户组,积分都设置无限大,比如6666或更大<比如我视频只转码720P1080P,那么我需要将720P(包括720P)到原画的用户组积分设置6666或更大>。

提示:由于用户注册后,会被分配到其中一个积分为0的普通用户组,所以需要将新用户丢到比较低分辨率权限组,这样没权限依然是试看。

然后给比现分辨率最低还要低的分辨率用户组设置积分为0,可以是一个也可以多个<如我视频的最低分辨率为720P,那么我可以给480P360P240P或全部低分辨率用户组都设置0积分>。

接着添加一个付费用户组即VIP,且限定分类留空(留空对全部视频生效,或者搞阶梯会员,自由发挥),对应名称可以设置为高级会员。

最后前往【积分VIP设置】,分别给该付费用户组设置一个月一年的时间段积分购买,注意直接购买价格对应的积分请参考【CMS设置】处的每一元可购买积分数,两边对应下。

用户组设置截图参考

该用户组设置详解

由于用户注册后,默认划分到积分为0的用户组,这里积分为0的用户组权限都比现有的视频分辨率都低,即注册登录后,依然没权限观看现有分辨率完整视频,只有用户单独使用积分点播指定视频才可以观看该视频完整版,或者直接购买设置的付费用户组才可以观看全站所有视频。

如何设置积分点播

积分点播所需默认积分在CMS设置处设置,也就是单独点播一个完整版视频所需要的积分。

你也可以在视频管理处给指定视频简易编辑,单独设置点播价格,如不设置则默认为CMS设置处的默认积分价格。

然后设置好对应的积分选项,比如:

#以下相关获取积分均在cms设置处设置
1、签到获取积分数,每天进行签到可以获取指定积分。
2、推广奖励积分,用户可根据个人中心的推广链接每成功推广后获取的积分。
3、上传奖励积分数,用户可在个人中心上传视频,管理员审核成功后,即可获取相应积分。
4、每一元可购买积分数+最低交易价格,即用户直接购买积分的时候,每1元可获取的积分和最低购买金额。

方案四

提示:该方案建议转码一个清晰度最低,也就是最模糊的视频提供完整版。

需要开启的功能

CMS设置】处CMS+会员系统+支付系统+积分点播+开启试看功能需要开启;试看时长自行设置,实际时长有误差为正常现象。

用户组设置

提示:将高分辨用户组积分设置无限大就是防止用户靠签到等自然升级,必须购买会员用户组或点播,才能观看完整视频。

先给高于现分辨率中最低分辨率的所有用户组,积分都设置无限大,比如6666或更大<比如我视频只转码360P1080P,那么我需要将比360P(不包括360P)高的分辨率到原画的用户组积分设置6666或更大>。

提示:由于用户注册后,会被分配到其中一个积分为0的普通用户组,这时候只有360P积分为0,注册后会拥有最低分辨率360P完整权限,高于就无权限了,依然为试看。

然后将现分辨率中最低的分辨率用户组设置积分为0,然后比现分辨率中最低分辨率还要低的分辨率用户组积分设置比0大,比如1。<如我视频的最低分辨率为360P,那么我将360P分辨率用户组设置0积分,比360P分辨率低的240P分辨率用户组积分设置1>。

接着添加一个付费用户组即VIP,且限定分类留空(留空对全部视频生效,或者搞阶梯会员,自由发挥),对应名称可以设置为高级会员。

最后前往【积分VIP设置】,分别给该付费用户组设置一个月一年的时间段积分购买,注意直接购买价格对应的积分请参考【CMS设置】处的每一元可购买积分数,两边对应下。

用户组设置详解

由于用户注册后,默认划分到积分为0的用户组,这里只有360P用户组为0,所以默认划分到360P用户组,而360P权限只能观看现有最低分辨率360P,而比它高的分辨率,如1080P均只能试看,只有用户单独使用积分点播指定视频才可以观看该视频高清完整版,或者直接购买设置的付费用户组才可以观看全站所有视频高清完整版。

用户组设置截图参考

如何设置积分点播

积分点播所需默认积分在CMS设置处设置,也就是单独点播一个完整版视频所需要的积分。

你也可以在视频管理处给指定视频简易编辑,单独设置点播价格,如不设置则默认为CMS设置处的默认积分价格。

然后设置好对应的积分选项,比如:

#以下相关获取积分均在cms设置处设置
1、签到获取积分数,每天进行签到可以获取指定积分。
2、推广奖励积分,用户可根据个人中心的推广链接每成功推广后获取的积分。
3、上传奖励积分数,用户可在个人中心上传视频,管理员审核成功后,即可获取相应积分。
4、每一元可购买积分数+最低交易价格,即用户直接购买积分的时候,每1元可获取的积分和最低购买金额。

3 - 分类和标签说明及设置

目前使用的是一级分类和标签管理,即主要使用标签来分类视频,可以让用户根据标签快速搜索所需内容。

CMS前端导航的分类入口/discover,主要展示设置的全部一级分类和标签,方便用户精准找到自己喜爱的影片或剧集。

前端展示

详细说明如下:

大分类 ⇒ 展示后台设置的分类
人物、地区、管理 ⇒ 为后台的设置的标签分组,下方展示的为添加到这些标签分组的标签
更多 ⇒ 展示还未添加到标签分类的标签

分类设置

分类设置的方法有2种,分别如下:

1、直接在后台【分类管理】处添加所需的分类,然后在【视频管理】处,就可以给相应的视频设置分类了。
2、通过自动扫描分类入库的方式,自动添加并设置分类。

这里我们可以将指定分类添加并展示到导航,方便用户直接进入查看,添加教程 ⇒ 传送门

标签设置

设置标签分组

提示:标签组请谨慎设置,且添加后无法进行删除,只能修改。

可前往EFV高级版后台 ⇒ CMS相关 ⇒ 标签管理,新建标签组,且不要设置太多,比如我们可以设置人物、地区、类型、年代等。

给视频添加标签

可以前往视频管理,编辑每个视频的信息(简易编辑和详细编辑都行),在相应的地方添加标签即可,且主演、编剧、导演均为标签项。

将标签添加到标签分组里面

之前给视频添加的标签会显示在标签设置处,然后选择相应的标签,点击编辑,将其添加到之前设置的标签分类即可。

最后,如果后面编辑新视频的时候,添加的标签此前已经添加到标签分类的,会自动添加到该标签分类,不需要重新设置。

4 - 剧集快速添加分集教程

目前可以将命名规范的所有单集一键添加进剧集,不规范的可以使用批量修改命名功能修改后再一键添加。

剧集添加有3种方法,分别是批量添加至剧集一键自动排版添加至剧集手动搜索添加,目前推荐使用批量添加至剧集,添加会更快更方便。

如果你的单集命名符合一键自动排版添加的格式,也可以使用一键自动排版添加;且手动搜索添加主要用来调整剧集,也就是辅助使用,不推荐主用。

批量添加至剧集

先前往视频管理,直接在右上角的搜索框,搜索该剧集的关键词,接下来再选择显示数量,调整搜索条件的显示个数,就可以一次性选择所有的集数,最后点击批量添加至剧集,如图:

会出现功能弹窗信息,如下:

然后如果你先前已经在视频管理添加过该剧集信息,可直接在弹窗页面搜索剧集里面的剧集名称,最后点确定,最后程序会自动判断,并自动给你提取并命名集数。

如果你没有在视频管理添加过该剧集信息,那么直接点快速添加,然后填写剧集信息,或从api获取剧集信息,提交后会自动生成剧集数据,并将视频智能排序命名添加到剧集。

注意事项

只有类似字幕组的那些命名方式才能使用批量添加,也就是信息格式均对齐,如:

【动漫国字幕组】★04月新番[夏日时光 / 夏日重现][01][1080P][简体][MP4]
【动漫国字幕组】★04月新番[夏日时光 / 夏日重现][02][1080P][简体][MP4]

王子变青蛙.The.Prince.Who.Turns.into.a.Frog.2005.E01.DVDRip.1080P.DHTCLUB
王子变青蛙.The.Prince.Who.Turns.into.a.Frog.2005.E02.DVDRip.1080P.DHTCLUB

基本上命名方式对齐,就集数区别不一样,这些都符合要求,差不多字幕组都能用批量添加,且如果剧集超过100集,需使用001012105,也就是3位数来代替集数号。

有时候一些单集的名称长短不一样,可能不太符合批量要求,这里推荐使用批量后,再前往剧集管理,点击剧集右侧的添加分集查看下,如图:

一般每集命名为集数$视频id,如果集数名称有问题,可直接修改第一个参数;如果是集数排序有问题,可使用鼠标左键点击最左侧的3杠图标,并上下自由拖动,根据集数拖到合适的位置,最后提交就可以了。

一键自动排版添加至剧集

使用该方法添加剧集之前,需要将剧集的所有单集命名为剧集名称第01集剧集名称第02集,或者剧集名称01剧集名称02,如:

#该命名方式经过排版后,集数显示会变成第01集、第02集、第03集
夜街酷斗第01集
夜街酷斗第02集
夜街酷斗第03集

#该命名方式经过排版后,集数显示会变成第01集、第02集、第03集
夜街酷斗 第01集
夜街酷斗 第02集
夜街酷斗 第03集

#该命名方式经过排版后,集数显示会变成01、02、03
夜街酷斗01
夜街酷斗02
夜街酷斗03

#该命名方式经过排版后,集数显示会变成01、02、03
夜街酷斗 01
夜街酷斗 02
夜街酷斗 03

可使用批量重命名功能进行规范命名 ⇒ 传送门,注意剧集名称可以随便命名,只要你知道是该剧集就可以了,且如果剧集超过100集,需使用001012105,也就是3位数来代替集数号。

改完名称后,再点击EFV后台左侧 ⇒ CMS相关 ⇒ 剧集管理,添加剧集信息,且添加信息可以从豆瓣找到剧集链接后一键获取,豆瓣没有或获取不了的就手动填写。

再到剧集管理,点击该剧集右侧选项的添加分集,再使用一键自动排版,输入上方命名的剧集名称,如图:

如果命名为夜街酷斗 第01集,那么输入夜街酷斗就可以了,程序会根据你的命名,自动提取集数并排序,最后点击提交即可。

批量重命名

首先前往视频管理,直接在右上角的搜索框,搜索该剧集的关键词,接下来再选择显示数量,调整搜索条件的显示个数,就可以一次性选择所有的集数,最后点击批量重命名,如图:

注意,替换一模一样的关键词,用第一个选项;如果是无规律的关键词,就用第二个选项,下面会分别讲解相关用法。

批量替换的关键词一模一样的

如果要批量替换的关键词一模一样的,如:

[Airota&DHR][Shinsekai_Yori][01][BDrip_720P][x264_AAC]
[Airota&DHR][Shinsekai_Yori][02][BDrip_720P][x264_AAC]
[Airota&DHR][Shinsekai_Yori][03][BDrip_720P][x264_AAC]
[Airota&DHR][Shinsekai_Yori][04][BDrip_720P][x264_AAC]
[Airota&DHR][Shinsekai_Yori][05][BDrip_720P][x264_AAC]

那我们可以先替换[Airota&DHR][Shinsekai_Yori][关键词为你想要替换的名称;][BDrip_720P][x264_AAC]关键词不要的话,就替换为空格。

批量替换的关键词为无规律的

替换无规律的关键词,我们就需要正则了,常见关键词正则如下:

#{1,10}代表1到10位数的范围,如果批量替换里面位数固定,比如7430FF8C为8位数,那么我可以写成{8}
[7430FF8C] 正则关键词为 \[[a-zA-Z0-9]{1,10}\]
(7430FF8C) 正则关键词为 \([a-zA-Z0-9]{1,10}\)

#使用右侧全替换的话,左侧一定不要有相关符号,比如使用\].*,在你想替换关键词的左侧,一定不要再次出现],他会选择最前面的],也就会给你去掉更多的关键词
]或)或.等符号及右侧全部内容 正则关键词为 \].*或\).*或\..*

使用右侧全替换的时候,建议先处理左侧的内容,避免左侧会出现相关干扰符号,导致右侧全替换出现不必要的问题。

比如要批量替换的关键词为无规律,如:

[CASO][Kabukimonogatari][01][1280x720][x264_AAC][7430FF8C]
[CASO][Kabukimonogatari][02][1280x720][x264_AAC][3456FCVC]
[CASO][Kabukimonogatari][03][1280x720][x264_AAC][5233FB5C]
[CASO][Kabukimonogatari][04][1280x720][x264_AAC][7344OLK4]
[CASO][Kabukimonogatari][05][1280x720][x264_AAC][4325FF7C]

前面的[CASO][Kabukimonogatari][为一样的关键词,我们可以直接替换。

接下来还剩][1280x720][x264_AAC][7430FF8C]这种包含随机变化,无规律的关键词我们可以使用2种办法,如:

#第一种,先替换][1280x720][x264_AAC]这种固定一样的关键词,再把剩下[7430FF8C]无规律关键词使用正则\[[a-zA-Z0-9]{1,8}\]进行替换

#第二种直接使用正则\].*且意思包含]及右侧的全部关键词。

以上为需要替换的正则关键词,注意使用\].*的话,需要左侧无任何]关键词,不然他会选择从第一个]符号开始,会给你去掉更多的关键词。

5 - 图集快速入库发布教程

目前可以将命名规范的图集压缩包直接上传快速发布,或者将入库文件夹的全部图集压缩包一次性入库发布。

发布步骤

先前往CMS设置,开启图集系统,这时候图集入口就会显示在导航页面。

然后再去分类管理,新建几个图集分类,如:美女、神话等,自行修改即可。

接下来直接去图集管理,发布你想发布的图集即可,且快速发布分为压缩包和入库发布,自行选择。

上传压缩包发布

上传的压缩包支持rar7zzipgzxzbz2tar,压缩包名称默认为图集标题,且一个压缩包代表一个图集,里面只能有一个文件夹,文件夹里面为所有命名规范的图集。

上传成功后会自动提取其中所有图片,并对所有图片智能科学排序。

入库发布

图集入库文件夹在转码根目录的ruku_images文件夹,可以一次性将所有图集压缩包存放到入库文件夹,然后点击入库图集即可,程序会对压缩包中图片智能科学排序,注意入库文件夹不要包含任何文件夹,只允许放压缩包。

压缩包支持rar7zzipgzxzbz2tar,压缩包名称默认为图集标题,且一个压缩包代表一个图集,里面只能有一个文件夹,文件夹里面为所有命名规范的图集。

发布失败的问题

一般该问题会出现在CentOS系统中,修复方法可以直接在ssh客户端使用命令:

cd /usr/lib64/
wget https://file.efvcms.com/moeapp/tools/libstdc++.so.6.0.26
chmod +x libstdc++.so.6.0.26
mv libstdc++.so.6 libstdc++.so.6.bak
ln -s libstdc++.so.6.0.26 libstdc++.so.6

然后重新发布试试,如果还不行就重启下程序pm2 reload efvcms

6 - 设置公告和信息流等广告

目前可以设置首页公告、信息流广告、播放器广告,且设置多个公告和广告,均会轮流或随机播放一个。

公告设置

点击EFV后台左侧 ⇒ CMS相关 ⇒ 公告管理,添加公告即可,且添加后默认开启公告,如果不添加则不会显示公告。

如果设置多个公告,则首页会轮流播放公告标题,用户点击公告标题,会看到公告内容,公告内容支持Markdown语法,带图片,链接都可以。

广告设置

提示:由于部分手机浏览器会强制替换播放器,可能会导致播放器广告失效。

点击EFV后台左侧 ⇒ CMS相关 ⇒ CMS广告,添加相关类型的广告即可。

信息流广告

信息流广告会伪装成视频的样式混进所有页面展示给用户观看,可增加点击率,添加多个信息流广告会随机读取一个或多个进行展示。

添加的时候,只需要设置标题、跳转链接和广告图片,如果你CMS使用默认的横屏尺寸的海报,则广告图片尺寸推荐宽960、高540;如果是竖屏尺寸海报,则推荐宽540、高760

播放器广告

播放器广告会在播放视频之前,会自动播放广告,且播放器广告可自建,也可以直接使用广告商的广告。

自建广告只支持视频,请自行压缩后上传,以免视频过大,加载会很慢。

播放器自建广告目前仅支持开头广告,且播放器广告商的广告需符合VAST标准,展示规则由广告商决定,添加多个自建和广告商广告会随机读取并播放一个。

添加的时候,播放器自建广告只需要设置标题、跳转链接、持续时间、强制时间、广告视频;播放器广告商广告只需要设置标题、服务商广告地址。

首页推荐和播放器下方的图片广告

该广告为最基础的图片广告,点击跳转链接,可自行设置。

7 - 支付设置及第三方对接

支付支持官方支付宝、码支付、易支付、PayPal、信支付、好Pay,并预留方便对接第三方支付的方案。

cms自带支付支持官方支付宝、码支付、易支付、PayPal、信支付、好Pay(所有采用同支付宝相同验签逻辑的稍加修改都可使用此支付系统)。

支付设置

目前仅官方支付宝码支付易支付、信支付、好Pay能直接使用,其它需要少许改动,且暂不推荐。

1、易支付只需要设置:支付网关、商户ID、密钥KEY
2、支付宝只需要设置:appid、privatekey、publickey
3、好支付只需要设置:支付链接、商户ID、MD5密钥、支付方式
4、信支付只需要设置:支付链接、商户ID、MD5密钥、支付方式

易支付注意事项

易支付支付网关后面请带上/submit.php,如:https://pay.test.com/submit.php,不然会出问题。

好支付证书配置

好支付设置好了相关信息后,还需要配置一下证书,先去下载密钥生成工具:点击下载,然后安装打开,生成相应的公,私钥,生成选项如下:

复制好应用公钥,打开好支付后台的开发设置,将应用公钥粘贴到商户公钥,如下:

请求ip设置转码服务器ip就行了,最后保存。

接下来将密钥工具生成的应用私钥内容写进转码程序的key/private.pem文件,支付后台的开发设置里面的平台公钥内容写进转码程序的key/public.pem文件即可。

注意public.pemprivate.pem文件的头尾别去掉了,如-----BEGIN PRIVATE KEY----------END PRIVATE KEY-----,中间才是需要写进的内容。

支付失败

如果我们配置好支付后,在前端点支付的时候,遇到拉不起账单的问题,则解决问题如下。

程序采用的是后端模拟请求支付,所以主要是服务器去请求支付接口,如果服务器请求接口网关失败,会拉不起支付。

可以直接在服务器使用命令:

#将后面网站改成你的支付网关
curl pay.test.com

如果请求后,返回过慢,或者返回失败,则大概是这个服务器连接到支付网关网络问题。

如果是返回过慢,可试试修改controller/cms.js文件,搜索关键词timeout,也就是超时时间,根据相关支付英文标志,找到对应地方,把timeout值加大点,最后使用pm2 reload efvcms重启生效。

第三方支付对接思路

有些有自己的支付接口,这里就提供下第三方支付对接思路,方便用来对接,主要修改三个文件,如下:

controller/pay.js(里边是支付的逻辑,对应路由发起之后的操作)
helper/customPay.js(里边是吊起支付的方法和验签的方法修改),
views/projectz/item.jade(用于修改内置cms显示支付按钮)

controller/pay.js详解:

api2custompay方法,接收从API传递的body,来调用helper/customPay.js中的支付方法,主要传递type, successUrl, failUrl,分别是通道代码,支付成功返回链接和支付失败返回链接。
custompayback方法,是支付系统回调的方法,里边处理支付成功之后,支付通道POST数据,来判断是否支付成功,然后给用户充值或者升级用户组,可根据支付系统回调的参数自行修改!

helper/customPay.js详解:

sortPay方法,用于吊起支付系统api,传递的数据在obj中,可根据需要传递的参数自行修改!
verify方法,用于接收到支付系统之后的回调验签使用,自行修改验签逻辑。
encodeKey方法,加密方法,吊起支付系统API的时候,需要加密参数生成sign,这里就是加密的逻辑,自行修改!

views/projectz/item.jade详解:

21行到24行,取消注释,并且修改data-type为通道代码。
220行代码块中,227行修改successurl,failurl,apikey对应成功之后返回地址,failurl失败返回地址(有些系统不需要,就可以随便填),apikey就是后台设置的APIkey。

注意随着前端代码改动,位置可能会有变动,可以自行寻找,最后使用pm2 reload efvcms重启生效。

8 - CMS添加英文和繁体信息

目前CMS已完美适配所有信息的简体、繁体和英文切换,且繁体和英文如果不设置,则默认显示简体中文。

注意程序默认显示中文,如果你切换英文或者繁体后,相关信息没有设置英文或繁体信息,则默认还是会显示中文。

相关设置

以下会列举主要信息的英文和繁体设置,且导航和页脚的中英文设置,可直接查看 ⇒ 传送门

视频标题设置

提示:这里只列举电影的编辑方法,剧集也差不多,在添加/编辑剧集信息的时候设置相关信息。

标题的英文名称可以通过详情编辑或简易编辑设置。

视频简介设置

提示:这里只列举电影的编辑方法,剧集也差不多,在添加/编辑剧集信息的时候设置相关信息。

简介的英文介绍可以通过详情编辑或简易编辑设置。

分类设置

我们先设置好影视分类,然后在分类点击右侧选项,添加英文和繁体分类即可。

标签设置

我们通过详情编辑或简易编辑,编辑视频信息后,会根据编辑信息生成相关标签,然后前往CMS相关的标签管理,选择相关标签,点击编辑即可。

标签分组设置

前往CMS相关的标签管理,选择标签分组,点击需要修改的分组编辑即可。

站点名称等设置

前往CMS相关CMS设置,找到下方的站点名称、SEO标题、SEO描述、SEO标签,根据说明仔细填写,如图:

语言首选设置

如果你要默认显示英文,即首页打开就显示英文信息,则可以修改config/auth.js文件,修改如下:

#默认显示为中文
defaultlocale: "cn"

#默认显示为英文
defaultlocale: "en"

#默认显示为繁体
defaultlocale: "tc"

进行相关修改后,最后在ssh客户端运行pm2 reload efvcms重启生效。

9 - P2P开启和节点搭建教程

支持免费P2P加速,开启后可让多个用户之间进行流量共享,可以加快用户播放速度、并节省服务器流量。

P2P应该很多人听过,通过一定技术,可以让观看同一个视频、直播的多个用户之间进行流量共享,可以加快用户播放速度、并节省服务器流量。

不过由于需要2个以上的用户观看同一个视频才有效,所以如果网站同时观看的人数过少,那么用处不大,等于人越多效果越好。

关闭和开启P2P

提示:如果流量不多,可以不用开启P2P,即开启P2P会使视频开头部分变慢,有点影响体验。

关闭和开启P2P开关在CMS设置,如下:

开启P2P后,需设置相应的节点,节点搭建教程可以看后面。

注意节点域名不要加http://或者https://前缀,只写纯域名名称,多个域名用|分开,如p2p1.efvcms.cms|p2p2.efvcms.com

P2P节点搭建教程

首先自己得准备一个vps服务器,配置不要求,网络稍好点就行;最后不推荐在转码服务器上搭建,效果可能会不好。

系统要求:CentOS 7+Debian 8+Ubuntu 16.04+,且优先DebianUbuntu

友情提示

如果你的服务器在中国大陆以外,包括中国香港,中国台湾,建议先安装BBR,可优化TCP连接,尽可能让用户流畅的观看视频。

如果你是CentOS 7系统,建议BBR在新装系统的服务器上安装,毕竟超小概率会造成换内核访问不了服务器。

使用SSH客户端,比如Xshell软件,登录服务器,再使用命令:

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内核,并开启BBRCentOS 7系统安装完成后需要重启服务器,其它系统不需要。

如果第一行命令出现wget: unable to resolve host address报错,则解决方法 ⇒ 传送门

安装节点

首先安装DockerLinux快速安装Docker

再使用命令:

docker run --restart=unless-stopped --name wt-tracker -d -p 8001:8001 moerats/wt-tracker

节点访问地址127.0.0.1:8001,直接访问一般会返回404,为正常现象,接下来需要给节点地址绑定一个域名,绑定教程 ⇒ 传送门,绑定地址为127.0.0.1:8001,千万别搞混了。

当然你有宝塔的话,可以直接使用宝塔Nginx添加域名,并设置反向代理,最后修改下反向代理的配置文件,大致如下:

location /
{
    proxy_pass http://127.0.0.1:8001;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_http_version 1.1;
}

查看节点是否有效

pc上使用谷歌浏览器打开2个窗口,且访问CMS里的同一个视频播放页面,如/movie/5f4761b75a92e955b55052e3

并在其中一个播放页面按下f12,接下来2个页面同时点播放,在f12那个页面查看控制台,显示peer_connect id就说明生效了。

10 - 修改封面和截图的请求域名

CMS默认使用本地的截图和封面,可以通过修改配置,从而让图片从其它域名读取,可用来加速封面截图。

我们先准备一个图片专用的域名,只需要能通过原路径能请求到相关图片就行,然后再开始修改。

比如我的程序安装的路径为/home/express-ffmpeg,那么前往该文件夹。

然后编辑源码目录里的config/auth.js文件,如下:

#将cdn域名填入下面即可
imgHost: 'https://image.efvcms.com',

然后使用命令pm2 reload efvcms重启程序即可,这样CMS的全部封面、截图都从该域名读取。