hugo配置commento评论服务。
文章目录
一个博客,有一个评论系统应该有一定必要性,评论可以告诉作者其他人对文章的看法和建议。虽然……也可能会出来一大堆垃圾评论什么的……
道听途说isso之类的其他评论系统不太好……,所以我决定搭一个commento评论系统,就是这样。
下载commento
下载并解压commento二进制包,等待进一步配置。
|
|
安装和配置postgreSQL
commento依赖postgreSQL,用于保存数据。
安装postgerSQL
安装postgerSQL,执行:
|
|
安装postgresql软件包,并切换至postgres1用户。
配置postgerSQL数据库
以postgres用户执行 createuser
命令来创建新的数据库用户。
|
|
如此这般,现在创建一个postgres数据库用户(这里是"web"),并允许其创建数据库。然后,创建一个用于commento的数据库
|
|
登陆到数据库,并更改密码
|
|
如此,postgreSQL的部分就此结束。
配置commento(后端)
commento会通过一系列环境变量来获取配置,需要在启动前配置一些2环境变量,否则无法正常启动。
创建启动脚本
虽然通过一些其他方式也能够设置这些环境变量,不过,创建一个启动脚本可能更为方便。
|
|
使用喜欢的文本编辑器创建一个shell脚本
|
|
commento启动前,必须设置 COMMENTO_ORIGIN
和 COMMENTO_POSTGRES
这两个环境变量,否则无法正常启动。
COMMENTO_ORIGIN
: 设置托管Commento的子域或IP地址,所有请求都将会转发至该域。其格式为http(s)://你所设置的域名
如: https://commento-blog.logc.icuCOMMENTO_POSTGRES
: 设置PostgreSQL服务器的URI
其格式为postgres://user:pass@host:port/commento?sslmode=disable
或者称作 postgres://用户名:密码@主机名:端口/数据库名称?sslmode=disable
如postgres://[用户名]:[密码]@127.0.0.1:5432/commento?sslmode=disable
COMMENTO_PORT
:配置commento监听端口0-65535(可选,默认为8080)
配置域名[非必须]
commento目前必须在一个新的域名下使用,所以需要创建一个新的域名A解析到commento服务上。
然后,初始化 COMMENTO_ORIGIN
环境变量为该域名。
当然,不设置也可以,这样就需要将 COMMENTO_ORIGIN
配置为IP地址了。
配置域名ssl证书[非必须]
安装certbot,以webroot模式验证域名,签发let‘s encrypt的ssl证书
|
|
certbot生成的ssl证书会保存在/etc/letsencrypt/live/[域名]/文件夹内。
配置nginx反向代理[非必须]
配置反向代理,以便于共用端口什么的?
|
|
网站初始化
执行第一步完成的启动脚本 bash start-commento.sh
在浏览器打开 https://commento.example.com/signup
如果一切正常的话,将会进入账户注册页
进入账户注册页里注册帐号,然后登陆页面。
点击左边的 +New Domain ,在弹出的窗口里添加准备集成评论的网站。
一切正常的话,就可以尝试集成进hugo了
集成commento评论进入hugo
进入hugo配置所在的目录,
|
|
并将下述内容添加至模板文件:
|
|
然后执行
|
|
来更新站点,并通过rsync上传至服务器。
常见问题
如果评论部分遇到了 This domain is not registered with Commento.
这样的错误,则需转到commento管理页面将网站所在域添加至后台。
一些其他配置
配置github关联登陆
github配置
访问github开发人员设定Developer settings,点击 New OAuth App
填写一些信息,注册OAuth应用程序
- Application name :应用程序名(可以随便填,不过建议起一个好记的名称)
- Homepage URL :应用主页的完整url
- Application description :应用说明,可以不填
- Authorization callback URL :授权回调网址,commento则需要将该值配置为commento的绑定链接(https://commento.example.com)
填写完成后,点击 Register application
来注册OAuth。
环境变量配置
OAuth注册完成后,复制 Client ID
,和 Client Secret
的值,用于配置commento
在启动脚本内添加以下命令
|
|
一切正常的话,就能用github来登陆了。
邮箱配置
在启动脚本加入以下命令
|
|
默认情况下,这些值为空,同时电子邮件相关的功能(邮件通知和重置密码)处于关闭状态。
翻译
commento并不支持多语言,不过commento支持指定资源目录位置,可以通过这一设置来配置翻译后的前端资源文件
下载修改过的翻译资源目录
|
|
在启动脚本中加入以下命令
|
|
目前这一翻译版本仅仅简要翻译了 js/commento.js 的一部分,还有很多内容都没有翻译。
仍待进一步完善。
(希望commento未来能支持多语言呢……[或者在那之前换成其他评论系统或者干脆关掉评论功能?])
末
到这里,commento算是搭建完成了吧,希望评论系统能够提供理性,友好的交流。
如果不能的话……关掉也不是什么特别麻烦的事情?
如果有什么看法建议的话,就请各位到下面的评论区发一下吧。^_^
-
postgres用户默认拥有postgreSQL数据库的全部权限。 ↩︎
-
关于commento的环境变量的具体内容,可以访问https://docs.commento.io/configuration/backend/。 ↩︎
文章作者 crimsonote
上次更新 2020-06-06