(摘) remark42给博客加个评论功能

声明:内容源自网络,版权归原作者所有。若有侵权请在网页聊天中联系我

本站是一个hugo静态博客,之前使用过两三种博客系统,大体是调用第三方的脚本来使用。存在速度慢和安全等问题。昨天试了试在自己服务器上搭一个评论系统。

remark42因为使用Go开发,天然绿色跨平台,部署就一个程序文件搞定。

官网文档:https://remark42.com/docs

个人习惯,能直接运行的就不考虑Docker。下载可执行程序直接运行即可。

remark42 server --secret 129129 --url https://pp.scwy.net/ --anon-vote --auth.anon --dbg --site scwy --admin-passwd 129129 --auth.email.enable --auth.email.from mailto:admin@scwy.net --auth.email.host scwy.net/ auth.email.user admin auth.email.passwd 129129 --auth.email.port 25 --auth.email.from 博客的邮箱验证

这里开通了评论服务,允许匿名和邮箱登陆。邮箱登陆首次需要验证Token,因此配置了自己发件信息。

–dbg 是表示显示更多信息用于调试。

–site scwy 表示网站ID,否则为默认remark。在嵌入代码中随之修改。

这个代码嵌入Hugo模板中,参数根据实际修改

<script>
  const remark_config = {
    host: 'https://demo.remark42.com',
    site_id: 'remark',
  }
</script>
<script>!function(e,n){for(var o=0;o<e.length;o++){var r=n.createElement("script"),c=".js",d=n.head||n.body;"noModule"in r?(r.type="module",c=".mjs"):r.async=!0,r.defer=!0,r.src=remark_config.host+"/web/"+e[o]+c,d.appendChild(r)}}(remark_config.components||["embed"],document);</script>

在需要显示评论的地方加入

<div id="remark42"></div>

另外还有一些样式、显示评论等功能。如何管理暂时还没学会,稍后继续研究。也不知道如何同时允许多个站点评论。

它完全可以搭在家里的Pi3上运行,供静态博客调用,连内容备份都省了。

接下来需要一个访问统计系统,如果能有Go开发的就更棒了。


2026.1.22

文档:https://remark42.com/docs/getting-started/installation/
下载:https://github.com/umputun/remark42/releases

<script>
	var remark_config = {
		host: "REMARK_URL",
		site_id: "YOUR_SITE_ID",
	}
</script>

<script>!function(e,n){for(var o=0;o<e.length;o++){var r=n.createElement("script"),c=".js",d=n.head||n.body;"noModule"in r?(r.type="module",c=".mjs"):r.async=!0,r.defer=!0,r.src=remark_config.host+"/web/"+e[o]+c,d.appendChild(r)}}(remark_config.components||["embed"],document);</script>

<div id="remark42"></div>

前端配置:

host: Remark42 服务器的主机名
site_id: Remark42 实例的Id
url: 带有评论的页面 URL,作为评论线程的唯一标识
components: embed 基础评论小部件 last-comments 最后评论小部件 counter 计数器小部件
max_shown_comments: 最多可显示的评论数 默认 15 条
max_last_comments: 最后评论小部件中最大评论数
theme: UI 主题 light/dark
locale: 界面本地化 zh为中文
simple_view: 覆盖后端最小化界面的参数,仅包含基本信息
no_footer: 隐藏带有签名和 Remark42 链接的页脚

后端配置:

可以通过参数或环境变量设置 https://remark42.com/docs/configuration/parameters/

发送信息给ntfy

export NOTIFY_ADMINS=webhook
export NOTIFY_WEBHOOK_URL=https://ntfy.sh/remark
export NOTIFY_WEBHOOK_TEMPLATE=’{{.Locator.URL}} {{.User.Name}}: {{.Text}}'

相关文章