在hexo fluid主题下以Netlify方式添加twikoo评论插件
本文最后更新于 2024年11月6日 晚上
刚开始是用huggingface部署的,但是突然崩了,数据库的数据都在,但是评论失败+无法登录管理面板+历史评论全寄。打开huggingface一看,一直preparing space,评论发回的响应也是preparing space,而且huggingface部署方式还不能配置邮件提醒,所以干脆换Netlify了,正好记录一下。
本博客记录的步骤在Twikoo官网上都有记录,原文链接为云函数部署 | Twikoo 文档
步骤总体分为三步:
- 在MongoDB Atlas上创建数据库,获取数据库连接字符串
- 使用Netlify部署twikoojs/twikoo-netlify: Deploy twikoo to Netlify
- 修改_config.fluid.yml文件
获取数据库连接字符串
推荐阅读原文:MongoDB Atlas | Twikoo 文档,图文并茂
第5步的密码就是MongoDB Atlas账号的密码,可通过邮箱重设
- 申请 MongoDB AtLas 账号
- 创建免费 MongoDB 数据库,区域推荐选择离 Twikoo 后端(Vercel /
Netlify / AWS Lambda /
VPS)地理位置较近的数据中心以获得更低的数据库连接延迟。如果不清楚自己的后端在哪个区域,也可选择
AWS / Oregon (us-west-2)
,该数据中心基建成熟,故障率低,且使用 Oregon 州的清洁能源,较为环保 - 在 Database Access 页面点击 Add New Database User 创建数据库用户,Authentication Method 选 Password,在 Password Authentication 下设置数据库用户名和密码,建议点击 Auto Generate 自动生成一个不含特殊符号的强壮密码并妥善保存。点击 Database User Privileges 下方的 Add Built In Role,Select Role 选择 Atlas Admin,最后点击 Add User。
- 在 Network Access 页面点击 Add IP Address 添加网络白名单。因为
Vercel / Netlify / Lambda 的出口地址不固定,因此 Access List Entry 输入
0.0.0.0/0
(允许所有 IP 地址的连接)即可。如果 Twikoo 部署在自己的服务器上,这里可以填入固定 IP 地址。点击 Confirm 保存 - 在 Database 页面点击 Connect,连接方式选择
Drivers,并记录数据库连接字符串,请将连接字符串中的
<username>:<password>
修改为刚刚创建的数据库用户名:密码
。 - 默认的连接字符串没有指定数据库名称,Twikoo 会连接到默认的名为
test
的数据库。如果需要在同一个 MongoDB 里运行其他业务或供多个 Twikoo 实例使用,建立加入数据库名称并配置对应的 ACL。
使用Netlify部署twikoojs/twikoo-netlify: Deploy twikoo to Netlify
原文链接:云函数部署 | Twikoo 文档。推荐阅读原文
到原文第9步后,根据自己设置的域名得到环境ID(envId
):https://你设置的site name.netlify.app/.netlify/functions/twikoo
修改_config.fluid.yml文件
打开本地的_config.fluid.yml文件,Ctrl+F搜索twikoo,找到:
1 |
|
在type
处填写"twikoo"。
再Ctrl+F搜索twikoo,找到:
1 |
|
在envId
处填写上面的https://你设置的site name.netlify.app/.netlify/functions/twikoo
最后,在需要添加评论的页面首部添加comment: 'twikoo'
即可为页面添加底部评论区。
也可以在_config.fluid.yml
里面设置,方法为:在对应页下的comments下将enable设为true,type设为twikoo。
比如,为关于页添加评论,就在/source/about/index.md
的首部加一行comments: 'twikoo'
,或者在_config.fluid.yml
里设置:
1 |
|
(不建议直接cv,如果不知道啥是yml就先搜搜,然后就懂了)
至此,部署成功,刷新博客后测试效果吧!
后续设置及版本更新
部署好之后,打开博客中任意一个带有评论的页面,会看见右下角有一个齿轮图标,如果没有就在昵称栏输入任意字符并回车就会出现。然后进入管理区,先设置密码,然后进去根据指示设置就可以了。
twikoo的指示写得很好👍,应该都看得懂
版本更新方法见:版本更新 | Twikoo 文档