博客评论从Waline迁移到Artalk
前言
好久没维护博客了,最近收到小伙伴评论,点进去看,我靠,这评论区怎么加载这么慢?感觉Waline + LeanCLoud有点儿卡了,在网上搜寻了一番,看到了Artalk这个宝藏,纯自托管,访问速度自己控制,还支持评论迁移,非常符合我的需求。
再见了,我的小Waline,开干!
开始
导出Waline评论
参考数据迁移 | Artalk,到LeanCloud
导出评论数据。(PS:下午4点后不允许导出……)
到LeanCloud发送的邮件下载评论数据压缩包。
部署Artalk
参考程序部署 | Artalk,docker-compose.yaml
如下:
1 | version: '3.8' |
输入以下命令后根据指引创建Artalk管理员账号:
1 | docker exec -it artalk artalk admin |
访问你的管理端网站http://<你的IP>:<你的端口>
,输入刚刚配置的管理员邮箱与密码,即可登录。
导入评论
将从LeanCloud邮件下载的压缩包解压,得到Comment.0.jsonl
文件。
这个文件不能直接使用,使用文本工具打开,会看到第一行有个注释,删除该注释,如:
1 | #filetype:JSON-streaming {"type":"Class","class":"Comment"} |
删除并保存后,到Artransfer转换为Artrans数据,选择格式Valine
。
点击下载 Artrans
得到Artrans格式的数据文件,这时候就可以到刚刚部署的Artalk服务端导入评论了。
(PS:如果不想使用自带的SQLite,需要使用MySQL的话,在设置
->数据库
,更改就行了,参考配置文件 | Artalk)
部署到Hexo
由于部署使用的是hexo-theme-butterfly主题,参考主题文档配置就行了。
到主题配置文件_config.butterfly.yml
,修改以下内容:
1 | artalk: |
其他
邮件提醒
参考邮件通知 | Artalk配置即可。
SMTP的密码获取可以参考这篇文章如何开启QQ邮箱的SMTP服务和设置授权码
如果文章被评论需要提醒到管理员,就要设置多元推送
,参考多元推送 | Artalk
本地访问
如果是在本地调试访问的话,会提示跨域错误,这个时候就需要设置可信域名
,参考配置文件-可信域名 | Artalk
将你的本地url添加进去就行了,如图: