手摸手带你用Hexo撸博客(三)之添加评论系统


原文地址
注: 笔者采用的是butterfly主题, 主题内置集成评论系统

butterfly主题开启评论

开启评论需要在comments-use中填写你需要的评论。

以Valine为例

comments:
  use: 
  - Valine
  # 是否显示服务商
  text: true
  # 懒加载 开启之后无法计数
  lazyload: false
  # 评论计数
  count: true 

配置你的 LeanCloud 应用

遵循 Valine的指示去配置你的 LeanCloud 应用。以及查看相应的配置説明。

valine:
  appId:  # 先空着 先空着 先空着 (leancloud application app id)
  appKey:  # 先空着 先空着 先空着 (leancloud application app key)
  pageSize: 10 # comment list page size
  avatar: monsterid # gravatar style https://valine.js.org/#/avatar
  lang: zh-CN # i18n: zh-CN/zh-TW/en/ja
  placeholder:  记得留下你的昵称和邮箱....可以快速收到回复(头像设置请参考https://valine.js.org/avatar.html)
  guest_info: nick,mail,link #valine comment header info (nick/mail/link)
  recordIP: false # Record reviewer IP
  serverURLs: # This configuration is suitable for domestic custom domain name users, overseas version will be automatically detected (no need to manually fill in)
  bg: /image/comment_bg.png # valine background
  emojiCDN: # emoji CDN
  enableQQ: false # enable the Nickname box to automatically get QQ Nickname and QQ Avatar
  requiredFields: nick,mail # required fields (nick/mail)
  option:

注册LeanCloud账号

注册地址

创建应用

一般选择开发版就可以了, 土豪请选择商用版, 优点是系统不会休眠

选择应用进入设置页面

把这里的AppId 和AppKey 添加到之前的配置中

建议设置域名白名单, 防止他人利用接口滥用

lean评论管理平台的域名绑定

设置=>域名绑定=>绑定新域名

需配置DNS节点

如果遇到已备案域名显示无法查询到备案信息

请前往官方社区 发帖反映问题

传送门

lean部署

云引擎=>部署

部署地址: https://github.com/zhaojun1998/Valine-Admin

分支: master

此外,你需要设置云引擎的环境变量以提供必要的信息,点击云引擎的设置页,设置如下信息:

  1. 必选参数
  • SITE_NAME : 网站名称。
  • SITE_URL : 网站地址, 最后不要加 /
  • SMTP_USER : SMTP 服务用户名,一般为邮箱地址。
  • SMTP_PASS : SMTP 密码,一般为授权码,而不是邮箱的登陆密码,请自行查询对应邮件服务商的获取方式
  • SMTP_SERVICE : 邮件服务提供商,支持 QQ163126Gmail"Yahoo"...... ,全部支持请参考 : Nodemailer Supported services。 --- 如这里没有你使用的邮件提供商,请查看自定义邮件服务器
  • SENDER_NAME : 寄件人名称。

例如:

  1. 设置完环境变量,必须重新部署,邮件提醒功能才会生效

  2. 添加用户

    存储 —— 用户 —— 添加用户

    可能会有一点延迟, 耐心等待一会

  3. leanCloud自动唤醒

    1. 由于leanCloud的休眠策略, 评论可能没有邮件通知(毕竟是白嫖)

    2. 首先需要添加环境变量,ADMIN_URL : 云引擎域名,如:https://jackma.avosapps.us(重启生效)

    3. 然后点击【云引擎】【定时任务】【创建定时任务】,按照图片上填写:0 0/20 7-23 * * ?

  4. 登录之前的管理平台地址即可管理评论 lean.limeichao.cn 这个东东

自动唤醒失败问题

免费版的 LeanCloud 容器,是有强制性休眠策略的,不能 24 小时运行:

  • 每天必须休眠 6 个小时
  • 30 分钟内没有外部请求,则休眠。
  • 休眠后如果有新的外部请求实例则马上启动(但激活时此次发送邮件会失败)
  • Valine-admin由于Leancloud流控原因,自动唤醒任务可能会失败, 所以这里介绍一个使用第三方计划任务网站进行定时唤醒 Valine-admin 的方法。

注册 cron-job 帐号

注册地址:https://cron-job.org/en/signup/

注册时的时区请选择 Asia/Shanghai

添加一个计划任务

  1. 登陆之后依次点击 MemberscronjobsCreate cronjob

  2. Title, Address

    • Title 可以随便填一个
    • Address 填写你的云引擎环境变量的 ADMIN_URL,也就是Leancloud的Web 主机域名。
  3. Schedule

    选择 User-defined 进行自定义设置(按住 Ctrl 可多选)

    • Days of month: 全选
    • Days of week: 全选
    • Months: 全选
    • Hours: 你需要在哪个时间段唤醒就选择什么
    • Minutes: 选择 0 , 20 , 40
  4. Notifications

    可以不用修改,也可以根据自己的需要修改

  5. Common

    勾选Save responses, 保存唤醒日志

  6. 点击Create cronjob

有不懂的地方请评论区留言哦