之前偶然间看到有群友使用wordpress转纯静态做企业官网,并在更新时上传更新后的静态html文件至各静态服务处。觉得速度很快,而且可以完全不用担心安全问题,也能随时将静态文件丢到任意托管平台。
遂仔细研究了一番,制作了本站的这个主题,为完全静态化做准备【ps:等服务器到期后,就转入无服务器部署,纯静态方案!】。
而我并不希望做一个完全静态的博客,希望能跟更多网友交流,不管是了解最新趋势,还是单纯的讨论些问题,因此还要解决评论这个问题。
搜索一番,有推荐twikoo, artalk的。但仔细翻阅后,发现与我的需求不太符:
- 能通过简单的js,css引入
- 简洁美观
- 数据可控
- 最好有用户管理
- 简单部署,最好不用部署
最后找到了Waline这个项目,【配置丰富,部署简单,引入方便!】
遂将其引入,作为本站评论的解决方案,具体可以看本站文章底部的评论框。
以下是一些本站的配置:
一、waline服务端的部署:
基本参照waline官方教程一步步往下,非常简单直观。如下:

(一)首先完成leancloud国际版的注册
注册完成后,创建个应用,以供waline做数据库存储。

然后点击设置,在应用凭证处查看部署waline所需的全部信息。
【ps: 绑定自定义域名过程极慢,除了前期的绑定阶段,还有后期的证书部署阶段,建议至少留1天时间,和上传自己域名的SSL证书】
(二)开始项目主体服务端在vercel上的部署
请参考官方教程,然后填写相对应的环境变量,本站的一些变量参数如下:

waline官方有对基本环境变量的解释,自行查阅。=.=上述参数不一定全有用,有些并没有实际用上。
二、waline客户端的部署
waline客户端引入非常简单,只需要一个绑定div和引入js即可,官方版本如下:
<head>
<!-- ... -->
<link
rel="stylesheet"
href="https://unpkg.com/@waline/client@v3/dist/waline.css"
/>
<!-- ... -->
</head>
<body>
<!-- ... -->
<div id="waline"></div>
<script type="module">
import { init } from 'https://unpkg.com/@waline/client@v3/dist/waline.js';
init({
el: '#waline',
serverURL: 'https://your-domain.vercel.app',
});
</script>
</body>
不建议用第三方资源库了,尤其哪些有投毒前科的,建议自托管,本身没多大的文件。
三、waline的前端配置
<div id="waline"></div>
<script type="module">
import { init } from '/waline/2.15.8/waline.js';
init({
imageUploader: false,
el: '#waline',
serverURL: 'https://comments.waoww.com',
});
</script>
四、还有更多的一些
waline的配套部署应该还有很多,但配置到现在这样,已经完全能够满足本站的需求了,因此后续将看情况继续添加和优化,并不断在本文继续补充。如果你有什么推荐的配置,欢迎留言评论!
【更新补充】
移除waline第三方静态资源库托管,转为自托管。(最近这些第三方静态库屡屡爆出投毒,除了大厂的,其他的真不敢用了,有些投毒藏得太深。)
五、接入waline社交登陆系统
Waline已经集成了社交登录,但是并没有默认开启,且文档资料也比较凌乱,仅在高级配置项有指向链接:


对此本站理解不深,但最后运行起来了。就是Deploy, 绑定域名,然后添加各自平台登录的环境变量appket secret 之类。
