1.Artalk简介
Artalk是一款简洁、安全的评论系统,它具有以下特点:
1.评论管理:支持评论审核、评论排序、评论搜索等功能,提升评论管理效率。
2.用户体验:支持多种评论操作,如评论投票、仅看作者、评论跳转等,增强用户体验。
3.多样化功能:支持验证码、图片上传、Markdown语法、表情包使用等功能,丰富评论内容。
4.通知功能:支持邮件通知、站内通知等多种通知方式,方便用户及时获取消息。
5.数据统计:支持浏览量统计、评论量统计等数据统计功能,帮助用户了解数据情况。
6.安全性功能:支持IP属地展示、评论审核等安全功能,保障评论系统的安全性。
7.自定义功能:支持评论置顶、自动保存、评论排序等自定义功能,满足用户个性化需求。
8.扩展性功能:支持扩展插件、API文档等功能,提供更多功能定制和扩展可能性。
Artalk的官网:https://artalk.js.org/
2.Artalk的安装
安装前提:
1.已经安装好docker和docker compose,请参看我的博文 docker系列-docker与docker compose安装
2.已经安装好数据库连接软件或工具
3.备好服务器(Vercel或其它不需要服务器的部署方式,请参考官网)
建议:
1.将所有docker项目放在统一目录 /root/data/docker_data/ 下,方面后期管理与维护
2.添加SWAP虚拟内存,请参看我的博文 添加 SWAP 虚拟内存
2.1 创建安装目录
mkdir -p /root/data/docker_data/artalk
2.2 创建docker-compose.yaml文件并上传至服务器
上传 docker-compose.yaml 文件到刚刚创建的artalk目录下,docker-compose.yaml 文件内容如下:
version: '3.8'
services:
artalk:
container_name: artalk
image: artalk/artalk-go
restart: always
ports:
- 23366:23366
volumes:
- ./data:/data
environment:
- TZ=Asia/Shanghai
- ATK_LOCALE=zh-CN #后台的语言
- ATK_SITE_DEFAULT=雪穗的Artalk #站点的名称
- ATK_TRUSTED_DOMAINS=https://www.sqwfly.top #可信域名
安装完成,可以访问 http://ip:23366,如果出现如下界面说明安装成功
之后回到服务器,执行如下命令设置管理员的用户名、邮箱和密码,用于后台的登录,如果后面忘记了密码也可以通过执行该命令重新设置密码
docker exec -it artalk artalk admin
用户名可以为中文,注意:设置的密码是不可见的但是会让你确认设置,建议通过复制粘贴的方式
3.Artalk的常用设置
更详细的配置请移步至 Artalk官网 进行查看
3.1 服务器
服务器配置项 | 配置内容 | 功能说明 |
---|---|---|
代理标头名 | X-Forwarded-For | 当使用 CDN 时也能获取用户真实 IP配合IP属地功能使用 |
3.2 可信域名
点击 + 添加可信域名,可以解决跨域问题,以我的网站为例,我添加的可信域名有:https://www.sqwfly.top 、https://artalk.sqwfly.top
3.3 评论审核
评论审核配置项 | 配置内容 | 功能说明 |
---|---|---|
默认待审 | √ | 发表新评论需要后台人工审核后才能显示,可以防止恶意评论 |
3.4 验证码
验证码配置项 | 配置内容 | 功能说明 |
---|---|---|
启用验证码 | √ | 不论是新用户注册还是用户评论都需要输入验证码,验证正确才能放行 |
3.5 IP属地
1.要开启IP属地功能,除了表格中的配置外,还需要配置 3.1 服务器 的 代理标头名 为
X-Forwarded-For
2.下载 ip2region.xdb 文件到 ./data 目录下,绝对路径为:/root/data/docker_data/artalk/data/ip2region.xdb
IP属地配置项 | 配置内容 |
---|---|
启用IP属地展示 | √ |
数据文件路径(.xdb 格式) | ./data/ip2region.xdb |
显示精度 | country/province/city |
3.6 图片上传
图片上传配置项 | 配置内容 |
---|---|
启用图片上传 | √ |
图片存放路径路径(.xdb 格式) | ./data/artalk-img/ |
图片大小限制(MB) | 5 |
3.7 邮件通知
关于如何获取SMTP密码请参看我的博文:开启邮箱的SMTP服务
邮件模板文件请前往 Artalk评论邮件模版 自行复制,之后将文件重名为 Artalk_Email.html 并上传至 /root/data/docker_data/artalk/data/ 目录下
邮件通知配置项 | 配置内容 |
---|---|
启用邮件通知 | √ |
发送方式 | smtp |
发信人昵称 | {{reply_nick}} |
发信人地址 | su17865123987@163.com |
邮件标题 | 您收到了来自 @{{reply_nick}} 的回复 |
邮件模板文件 | ./data/Artalk_Email.html或者默认 |
由于配置了发送方式为smtp,所以需要配置SMTP发送,这里以163邮箱为例,你也可以设置QQ邮箱等
SMTP发送 | 配置内容 |
---|---|
发件地址 | smtp.163.com |
发件端口 | 465 |
用户 | su17865123987@163.com |
密码 | 这里为SMTP密码而非邮箱密码 |
3.8 多元推送
多元推送配置项 | 配置内容 | 功能说明 |
---|---|---|
通知模板 | default | |
待审评论仍然发送通知 | √ | 当评论被拦截时仍然发送通知 |
嘈杂模式 | √ | 默认为关闭状态,此时站内仅向管理员回复的消息会发送通知,例如「普通用户 A」回复「普通用户 B」,这两个用户之间的通讯不会通知管理员 |
邮件通知管理员配置项 | 配置内容 | 功能说明 |
---|---|---|
开启 | √ | 当站点有评论时会通知管理员 |
邮件标题 | [{{site_name}}] 文章 "{{page_title}}" 有新评论了 | 发送给管理员的邮件标题 |
管理员邮件模板文件 | default | 发给管理员的邮件所使用的邮件模板 |
3.9 社交登录
社交登录配置项 | 配置内容 | 功能说明 |
---|---|---|
启用社交登录 | √ | |
允许匿名评论 | □ | 允许跳过验证,仅填写匿名的昵称和邮箱 |
这里以邮箱验证登录为例,需要提前配置好 邮件通知
Email配置项 | 配置内容 |
---|---|
启用邮箱密码登录 | √ |
邮箱验证邮件标题 | Your Code - {{code}} |
邮箱验证邮件模板 | default |
3.10 界面配置
界面配置配置项 | 配置内容 |
---|---|
评论框占位文字 | 推荐qq邮箱,可以和您的QQ头像自动同步,其他邮箱如果使用了Cravatar服务则会自动匹配您设置好的头像,否则将会生成默认头像 |
无评论显示文字 | 天空没有翅膀的痕迹,而你已飞过 |
发送按钮文字 | 发送按钮文字 |
表情包 | https://cdn.klyang.com/json/emo.json |
用户 UA 徽标 | √ |
其余配置项可以自行尝试,效果如下图所示
为了能够获取注册用户的头像,需要配置头像Gravatar的API地址,如果是QQ邮箱注册,可以直接获取QQ头像,如果是其他邮箱注册需要注册用户前往 https://cravatar.cn 设置对应邮箱的头像,否则会显示默认头像
头像Gravatar配置项 | 配置内容 |
---|---|
API 地址 | https://cravatar.cn/avatar/ |
API 参数 | d=mp&s=80 |
4.将Artalk评论接入Halo
启用该插件需要禁用默认评论插件以及其它评论插件
前往应用市场下载Artalk 评论区评论区插件,然后启用该插件
5.Artalk的升级与更新
# 方式一
cd /root/data/docker_data/artalk
docker compose down --rmi all # 停止容器运行并删除相关镜像
docker compose up -d
# 方式二
cd /root/data/docker_data/artalk
docker compose down # 停止容器运行
docker compose pull # 重新拉取镜像
docker compose up -d
6.Artalk的卸载
cd /root/data/docker_data/artalk
docker compose down --rmi all # 停止容器运行并删除相关镜像
cd ..
rm -rf /root/data/docker_data/artalk # 完全删除
评论区