Valine Admin介绍

Valine是国内较多网站使用的基于LeanCloud存储的无后端的评论系统,Valine-Admin基于LeanCloud云引擎,对Valine评论系统进行功能的增强——比如:评论/回复邮件通知、后台评论管理、人工审核评论、Akismet评论过滤功能、自定义邮件发送样式的模板等功能。

原项目地址:https://github.com/DesertsP/Valine-Admin

作者博客:https://deserts.io/valine-admin-document/

本文仅是自己重新部署Valine-Admin的一个小记录,可能不是很详细,如有疑问可查看作者博客,超级详细!

云引擎部署

创建应用

LeanCloud国内的华东和华北节点不再提供免费二级域名,需要你自行绑定已备案二级域名,所以推荐使用LeanCloud国际版(有免费二级域名可用,可绑定自定义域名,无需备案

进入LeanCloud官网首页,右上角选择国际版,然后登陆你的账号,没有就先注册,点击创建应用

应用名称随便填,计价方案选择开发版(免费,每天有休眠时间),然后点击创建

设置域名

进入刚才创建应用的云引擎设置

云引擎入口的设置选项卡,进行绑定域名的操作,因为是国际版,所以你可以选择使用免费的二级域名也可以绑定自己的独立域名

使用二级域名

如果你想直接使用免费的二级域名,直接在这填入二级域名的前缀保存即可

绑定独立域名

如果你想绑定自己的域名,点击保存右边的绑定独立域名进入绑定域名的操作

点击绑定新域名后填入你想绑定的域名,SSL证书管理推荐选择自动,其他保持默认,然后点击绑定

然后去你的域名控制台设置CNAME解析记录即可

开始部署

切换到云引擎入口的部署选项卡,点击部署项目

按照图示步骤填入Valine Admin的Github项目地址保存

稍等一会儿,云引擎部署完成

设置环境变量

在云引擎设置选项卡的自定义环境变量里面添加自定义环境变量

自定义变量参考(其中部分是必填变量)

变量 实例 说明
SITE_NAME XXX [必填]站点名称
SITE_URL https://xx.com [必填]站点首页地址(最后面不加/)
SMTP_SERVICE Gmail [必填]支持这些SMTP邮件服务商
SMTP_USER xxx@gmail.com [必填]SMTP登录账号
SMTP_PASS xxxxxxxxx [必填]SMTP登录密码
SENDER_NAME xxx [必填]邮件发件人名称
SENDER_EMAIL xxx@gmail.com [必填]发件邮箱
ADMIN_URL https://xx.avosapps.us/sign-up [建议]云引擎Web二级域名或者绑定的独立域名加上/sign-up
BLOGGER_EMAIL xxx@gmail.com [可选]博主通知收件地址
AKISMET_KEY xxxxxxxxx [可选]Akismet Key智能反垃圾评论,设为MANUAL_REVIEW开启人工审核,留空则不使用反垃圾

设置好自定义环境变量保存后记得重启云引擎或者重新部署

配置后台

进入评论管理后台:绑定的域名/sign-up

设置好了上面的信息现在就可以登录后台了

设置定时任务

进入云引擎定时任务选项卡使用LeanCloud自带的定时任务来进行定时唤醒云引擎和补发邮件:

自我唤醒

注意Cron表达式在国际版LeanCloud上用的是UTC时间,可以参考我的:0 */30 0-15,23 * * ?

补发邮件

每天早上8点半补发邮件,Cron表达式(UTC时间):0 30 00 * * ?

数据备份与恢复

有时候,我们偶尔需要重新部署valine-admin,或者自己魔改,但是又不想丢失之前的评论数据既可以利用LeancLoud存储中的导入导出功能

评论数据备份

评论数据只需要限定Class导出Comment的数据就好了:

评论恢复

只需要导入CommentClass,导入文件的格式是json格式

其他问题

忘记后台登陆信息

只需要在LeanCloud存储入口的结构化数据里面删除_User表里面的那一行数据,然后重新访问你的管理后台的注册地址即可!

云引擎日志出现警告

部署完成后我们会出现云引擎日志里面出现警告报错:

1
(node:33) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated

我们只需要修改package.json中的node版本为:11.x (低于12.x就可以),现在警告是没了,评论也使用正常,如果以后以后有其他问题在做记录……

这是我修改好的项目地址:https://github.com/Spoience/Valine-Admin