Twikoo评论系统配置

Twikoo 评论系统配置

目前很多面板支持一键配置,以下是私有部署方式介绍

云端部署

  1. TwiKoo 官网 找到云函数部署的私有部署方式,按照文档进行配置。
  2. 下载nodejs 选择最新的LTS版本,Linux,nvm,npm。按照命令安装。
  3. 指定镜像源:npm config set registry https://registry.npmmirror.com
  4. 安装 Twikoo server: npm i -g tkserver查看是否安装成功:npm ls tkserver -g
  5. 配置环境变量,主要关注以下几个参数:
    • TWIKOO_DATA:lokijs 数据库存储路径,默认是 ./data
    • TWIKOO_PORT:服务端口,默认是 8080
    • TWIKOO_IP_HEADERS:在特殊情况下使用,如使用了 CloudFlare CDN 它会将请求 IP 写到请求头的 cf-connecting-ip 字段上,为了能够正确的获取请求 IP 你可以写成 [“headers.cf-connecting-ip”],默认是 []
  6. 启动服务
    • 创建一个文件夹,如 /www/wwwroot/twikoo在该文件夹下执行启动命令即可将数据库文件存储在该文件夹下
    • export TWIKOO_DATA=/www/wwwroot/twikoo/data
    • export TWIKOO_PORT=xxxx
    • export TWIKOO_IP_HEADERS=["headers.cf-connecting-ip"]
    • source ~/.bashrc
    • 检查环境变量是否设置成功(注意:有时设置不成功,可以直接添加到/root/.bashrc中):
      • export | grep TWIKOO
      • 粗略启动服务tkserver并访问http://ip:xxxx查看是否成功(注1
  7. 新文件夹nohup tkserver >> tkserver.log 2>&1 &命令后台启动,访问 http://服务端IP:端口号 测试服务是否启动成功。但是概率存在使用nohup &命令运行shell脚本,关闭终端仍然退出(可以试试exit命令注销终端)……
  8. 配置代理实现 HTTPS 访问:
    • 添加纯静态站点:PHP项目,twikoo.{域名}
    • 配置ssl证书:let’s encrypt 手动解析 通配符 修改对应的阿里云和cloudflare的DNS解析,也可能只需要修改cloudflare的DNS解析
    • 添加反向代理: 代理名称:twikoo,目标URL:http://127.0.0.1:{端口},代理域名:$host
  9. 最终访问地址为:https://twikoo.{域名}
  10. 注意定期备份数据库文件,防止数据丢失

前端配置

到博客配置文件中配置 envId 为 https:// 加域名(例如 https://twikoo.yourdomain.com)

更新云端

  1. 停止旧版本 kill $(ps -ef | grep tkserver | grep -v 'grep' | awk '{print $2}')
  2. 拉取新版本 npm i -g tkserver@latest
  3. 回到上文第7步重新启动服务

注1:前提是需要在服务器安全组宝塔面板中开放该端口,用完关闭这两个端口。或者先配置反向代理,直接访问域名。就不需要开放端口了。