前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Waline评论系统部署日志

Waline评论系统部署日志

作者头像
FloatSheep
发布2022-04-25 17:18:50
7690
发布2022-04-25 17:18:50
举报
文章被收录于专栏:yetonwooyetonwoo

本文章首发于语雀! 通过各种高科技功能同步到Hajeekn 的博客 本文基于@CCKNBC的日志@Waline 官方文档和博主自己部署时的实际情况编写 如果需要最详细的配置请前往 @Waline 官方文档

评论系统特性

  • 快速
  • ·安全
  • Markdown 语法支持
  • 轻量易用
  • 免费部署
  • 多种部署方式和存储服务支持,每列选择一项多达 48 种部署方式任君选择

Waline

客户端脚本

服务端部署

数据存储

@waline/client

Vercel

LeanCloud

MiniValine

CloudBase

CloudBase

Docker

MongoDB

独立部署

MySQL

SQLite

PostgreSQL

Github

Todo

  • [x] 微信通知
  • [x] QQ 通知
  • [x] Telegram 通知
  • [x] Akismet
  • [x] 文章统计
  • [x] 多语言同步
  • [x] 自定义语言支持
  • [x] 登录支持
  • [x] 评论管理
  • [x] 评论删除
  • [x] 其它数据库支持
  • [x] 基于 IP 的发布评论频率限制
  • [x] 基于关键词的评论过滤限制
  • [x] IP 黑名单
  • [x] 重复内容检测
  • [x] CloudBase 腾讯云开发部署支持
  • [x] 社交登录
  • [ ] AWS, GCP, Azure 部署支持
  • [ ] 置顶评论
  • [ ] 评论赞踩

如果您要获得来自 Waline 群友或公子大佬的支持,可以在Github Discussions 中发布问题获取支持。当然你也可以加入 Waline 的 Telegram 小组或者是加入我们的 Waline 用户交流 QQ 群获取更多的支持。

上手

博主采用 Butterfly 主题,已经内置 Waline 评论系统

Vercel + LeanCloud

博主就使用了这种方式(毕竟能白嫖谁还要花钱啊? 博主推荐使用LeanCloud 国际版本,如果您使用的是LeanCloud 中国版本,除了本文介绍的环境变量,还需要绑定 LeanCloud 域名 配置方式: 设置 > 域名绑定 > API 访问域名 绑定新域名 > 输入需要绑定的已备案域名点击 确定。之后按照页面上的提示去 DNS 上做正确的 CNAME 解析即可。 点击上面的 Deploy 按钮就可以快速跳转到 Vercel 部署辣 如果你没有 Vercel 账号,可能提示你需要注册一个,这里不要用 QQ 邮箱因为他们会认为 QQ 邮箱是一个垃圾邮箱

PROJECT NAME 可以随便填写一个 这就是项目名称,不过为了之后好辩别,还是写一个方便记住的吧 输入了你的项目名称后点击 Continue 进入下一步

不过可能会提示你要选择一个 随便来一个就是(前提是你有对应的账号,否则老老实实选择 GitHub

进入下一步后会让你填写创建的 Git 仓库名称 点击你的用户名可以显示出你账号绑定的 GitHub 账号 这样就可以自定义创建的账号

下方 👇 的 Create private Git Repository 如果勾选上创建的时候就会创建一个私有仓库 然后再次点击 Continue 进行下一步 然后就会出现这个页面

不管他,下滑 找到 Environment Variables 配置环境变量 默认需要的环境变量如下:

  • LEAN_ID
  • LEAN_KEY
  • LEAN_MASTER_KEY

它们的值分别对应上一步在 LeanCloud 中获得的 APPID APPKEY MasterKey 获取方法: 进入 LeanCloud 这边用国际版演示 进入选择 Console 如果没有创建一个应用 注意 ⚠: 如果您之前用了 Valine 评论系统 就不用创建了,因为 Waline 评论数据与 Valine 评论数据可以共用 进入应用设置后选择 设置 -> 应用 Keys

复制并保存 Credentials 的所有配置 你看不到我的是因为我遮掉了 顺便教各位在拍摄截图时怎么遮掉重要内容 F12 找到重要内容的文字标签 这里是 code 然后加上 color: 网页背景颜色; 和 background: 网页背景颜色; 这样就行辣 我们获取到了 APPID APPKEY MasterKey 创建变量填写就 OK 这里的变量需要一个一个填 你填完一个点击 ADD 然后就会填的数据就会在下方,但是上面的输入框会没有文字,这点就很棒(๑•̀ㅂ•́)و✧

设置都完成后就可以点击 Deploy 了 在这里稍等一会儿就可以部署完成 部署完成后 Vercel 会放烟花 🎇 庆祝一下 然后在接下来的页面点击 Visit 就可以打开部署好的示例网页 然后你需要注册一个账号 在 Vercel 分配的域名后面加上/ui/register 第一个注册的会成为管理员哦~ 如果你想要自定义管理员头衔 可以在客户端脚本中用langMode.admin配置哦 例如:

代码语言:javascript
复制
function waline() {
  const Waline = require("@waline/client");
  new Waline({
    el: "#waline-comment",
    serverURL: "https://logwaline.vercel.app",
    path: window.location.pathname,
    visitor: true,
    lang: location.pathname.startsWith("/en/") ? "en" : "zh-CN",
    langMode: {
      admin: location.pathname.startsWith("/en/") ? "Administrator" : "Hajeekn",
    },
  });
}

按这样来说,你还可以配置访客的角标(头衔) 具体去看看Waline 文档或者@CCKNBC 当然如果你和我一样用的是 Butterfly 那么可以找到 Waline 配置项 在option配置项下面加入 langMode: admin: Hajeekn 即可 示例:

代码语言:javascript
复制
option:
  pageSize: 10
  requiredFields: mail
  # anonymous: false
  placeholder: 社交登录可助您快速录入信息,可匿名评论,但您的评论必须经人工审核通过后才会显示,并可收到相关回复邮件通知,因此邮箱为必填项
  # avatarCDN: https://sdn.geekzu.org/avatar/
  #https://valinecdn.bili33.top/
  langMode:
    admin: Hajeekn

当然 Waline 现在也可以更改邮件模板 只需要在环境变量内写入就行 但是环境变量限制大小,推荐按照issues/106配置 当然如果你的评论不是很多,并且之前配置过 Valine-Admin,那么你仍然可以使用 LeanCloud 来做异步发送通知,关闭默认的通知配置,或者使用 js 推送

表情包配置(Butterfly)

这部分和 Valine 没多大差别,格式也可以直接复制粘贴 Valine 的 只需要把名字改为 waline.json 具体可以查看主题文档

CloudBase 云开发部署

可以去看看@CCKNBC(CC)大佬写的

升级

Vercel

这里照搬@CCKNBCの 所需要的工具

当然前提是公开仓库 安装完成后你就可以删除你现有的名为 Waline 的仓库,再 fork CCKNBC 的仓库,然后去你的 Vercel 解绑之前的仓库,再绑定你 fork 的仓库,最后点一下重新部署即可 但是如果你没用 tcb 就把 .github/workflows/Update Waline TCB.yml 里的文件删掉,因为涉及到自动部署更新云开发,还有环境变量问题,如果没设定会导致报错 这部分照搬了 CC 的文章熬

Tencent CloudBase

和上面一样 Fork CCKNBC 的仓库 然后新建几个变量 进入你的仓库/settings/secrets/actions

变量名

变量解释

SECRETID

API 访问密钥 ID,可点击这里

新建/查看

SECRETKEY

API 访问密钥 KEY,可点击这里

新建/查看

TCBFUNNAME(没什么好加密的,就叫 waline 算了)

你想要新建/已有函数的名称,比如 Waline

TCBENVID

环境 ID,可点击这里

这里 查看,地址栏后也会显示,反正就是很多地方都在上面点一下就能看到 |

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3gll8aqhc2kgg

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-02-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 评论系统特性
    • Todo
    • 上手
      • Vercel + LeanCloud
        • 表情包配置(Butterfly)
        • CloudBase 云开发部署
        • 升级
          • Vercel
            • Tencent CloudBase
            相关产品与服务
            访问管理
            访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档