解决 Valine 国际版无法评论的问题

注意
本文最后更新于 2022-01-17,文中内容可能已过时。

哈哈哈 Zeroy 发现我博客评论坏了…

先排查一下是哪儿的问题, 随便打了点东西评论, 打开控制台, 看到一行报错:

POST https://us.leancloud.cn/1.1/classes/Comment net::ERR_CONNECTION_CLOSED

一开始以为 commnet. 那个管理评论的域名证书到期了. 去 LeanCloud 后台逛了一圈, 发现 SSL 是他自己申请的, 和我自己的域名没关系. 也对, 我好像也没申请过 commnet. 的证书…

后来 ping 了一下 us.leancloud.cn, 你猜怎么着? ping 不上! 也是说, 这域名挂了.

翻了一下 issue, 找到了原因. issue跳转

LeanCloud 通用域名不稳定, 需要指定自定义服务器 URL. 在 LeanCloud 后台可以看到 serverURLs.

找到实例化 Valine 的 js 代码, 加上这个参数就行了.

为了统一主题的设置, 我写成了下面这个样子:

1
2
3
4
5
6
	new Valine({
		el: '#vcomments',
		appId: {{ .Site.Params.LEANCLOUD_APP_ID }},
		appKey: {{ .Site.Params.LEANCLOUD_APP_KEY }},
		serverURLs: {{ .Site.Params.LEANCLOUD_SERVER_URLS }}
	})

然后在 hugo 的配置文件 config.toml 里加上 LEANCLOUD_SERVER_URLS 的值就可以了.