六一的部落格


行百里者半九十




引入

之前收到过一条评论,因为使用了html语法却没有使用代码块,无法正常显示。

我希望评论内容仅作为文本,便萌生了更换评论系统的想法。

一番尝试后找到了Isso,其作者考虑到这一点,允许在配置文件提供相应设置。

Isso - Configure how comments are rendered


Isso

Isso

GitHub - Isso

在官网首页的评论示例中,包含html代码,不会被解析。

该项目仍在更新。


Isso-cn

Isso-cn

Isso的分支,针对国内环境增加了一些新功能。


安装

环境
系统 Ubuntu

Installation

  1. 创建用户isso


  2. 安装Python环境

    1sudo apt-get install python3-setuptools python3-virtualenv python3-dev
  3. 在virtualenv安装

    1virtualenv --download /opt/isso
  4. 激活virtualenv

    1source /opt/isso/bin/activate
  5. 安装Isso

    1pip install isso

部署

  1. 配置文件

    Isso - Server Configuration

    Isso-cn - Server Configuration

    1# su isso
    2
    3touch ~/isso.cfg

    isso.cfg

    [general]
    dbpath = <数据库路径>
    host = <站点>
    max-age = 15m
    notify = stdout
    log-file = <日志路径>
    gravatar = false
    gravatar-url = https://www.gravatar.com/avatar/{}?d=identicon&s=55
    latest-enabled = false
    [server]
    listen = http://localhost:<Isso监听端口>/
    [admin]
    enabled = true
    password = <后台管理密码>
    [markup]
    options = strikethrough, superscript, autolink
    flags = skip-html, escape, hard-wrap
    allowed-elements =
    allowed-attributes =

    通过设置flags,不解析评论文本。

    其他字段含义,参见官网文档。

    字段 示例
    数据库路径 /tmp/comments.db
    站点 https://example.com
    日志路径 /tmp/isso.log
    Isso监听端口 10022
    后台管理密码 secret
  2. 如果开启防火墙,需允许Isso监听端口

    1# sudo -i
    2
    3ufw allow <Isso监听端口>
  3. Nginx反代

    server {
        listen 443 ssl;
    
        ...
    
        location /isso {
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Script-Name /isso;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_pass http://localhost:<Isso监听端口>;
        }
    }
  4. 在后台运行服务

    1# su isso
    2nohup isso -c ~/isso.cfg run &
  5. 验证

    管理后台

    <站点>/isso/admin

接入Isso

Isso - Client Configuration

  • 脚本

     1<script data-isso="<站点>/isso/"
     2    data-isso-id="thread-id"
     3    data-isso-css="true"
     4    data-isso-css-url="null"
     5    data-isso-lang="zh"
     6    data-isso-max-comments-top="10"
     7    data-isso-max-comments-nested="5"
     8    data-isso-reveal-on-click="5"
     9    data-isso-sorting="newest"
    10    data-isso-avatar="true"
    11    data-isso-avatar-bg="#f0f0f0"
    12    data-isso-avatar-fg="#9abf88 #5698c4 #e279a3 #9163b6 ..."
    13    data-isso-vote="true"
    14    data-isso-vote-levels=""
    15    data-isso-page-author-hashes="f124cf6b2f01,7831fe17a8cd"
    16    data-isso-reply-notifications-default-enabled="false"
    17    src="<站点>/isso/js/embed.min.js"></script>
  • 评论框

    1<section id="isso-thread"></section>

注意 :官网的JS路径 embed.js 不可用


使用 Isso 为 Hugo/Hexo 等静态网站添加评论功能

Isso 中文文档:自建 Isso 评论服务及其国内增强版功能介绍

hugo博客添加isso评论


Isso评论服务



引入

之前收到过一条评论,因为使用了html语法却没有使用代码块,无法正常显示。

我希望评论内容仅作为文本,便萌生了更换评论系统的想法。

一番尝试后找到了Isso,其作者考虑到这一点,允许在配置文件提供相应设置。

Isso - Configure how comments are rendered


Isso

Isso

GitHub - Isso

在官网首页的评论示例中,包含html代码,不会被解析。

该项目仍在更新。


Isso-cn

Isso-cn

Isso的分支,针对国内环境增加了一些新功能。


安装

环境
系统 Ubuntu

Installation

  1. 创建用户isso


  2. 安装Python环境

    1sudo apt-get install python3-setuptools python3-virtualenv python3-dev
  3. 在virtualenv安装

    1virtualenv --download /opt/isso
  4. 激活virtualenv

    1source /opt/isso/bin/activate
  5. 安装Isso

    1pip install isso

部署

  1. 配置文件

    Isso - Server Configuration

    Isso-cn - Server Configuration

    1# su isso
    2
    3touch ~/isso.cfg

    isso.cfg

    [general]
    dbpath = <数据库路径>
    host = <站点>
    max-age = 15m
    notify = stdout
    log-file = <日志路径>
    gravatar = false
    gravatar-url = https://www.gravatar.com/avatar/{}?d=identicon&s=55
    latest-enabled = false
    [server]
    listen = http://localhost:<Isso监听端口>/
    [admin]
    enabled = true
    password = <后台管理密码>
    [markup]
    options = strikethrough, superscript, autolink
    flags = skip-html, escape, hard-wrap
    allowed-elements =
    allowed-attributes =

    通过设置flags,不解析评论文本。

    其他字段含义,参见官网文档。

    字段 示例
    数据库路径 /tmp/comments.db
    站点 https://example.com
    日志路径 /tmp/isso.log
    Isso监听端口 10022
    后台管理密码 secret
  2. 如果开启防火墙,需允许Isso监听端口

    1# sudo -i
    2
    3ufw allow <Isso监听端口>
  3. Nginx反代

    server {
        listen 443 ssl;
    
        ...
    
        location /isso {
       proxy_set_header Host $host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Script-Name /isso;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_pass http://localhost:<Isso监听端口>;
        }
    }
  4. 在后台运行服务

    1# su isso
    2nohup isso -c ~/isso.cfg run &
  5. 验证

    管理后台

    <站点>/isso/admin

接入Isso

Isso - Client Configuration

  • 脚本

     1<script data-isso="<站点>/isso/"
     2    data-isso-id="thread-id"
     3    data-isso-css="true"
     4    data-isso-css-url="null"
     5    data-isso-lang="zh"
     6    data-isso-max-comments-top="10"
     7    data-isso-max-comments-nested="5"
     8    data-isso-reveal-on-click="5"
     9    data-isso-sorting="newest"
    10    data-isso-avatar="true"
    11    data-isso-avatar-bg="#f0f0f0"
    12    data-isso-avatar-fg="#9abf88 #5698c4 #e279a3 #9163b6 ..."
    13    data-isso-vote="true"
    14    data-isso-vote-levels=""
    15    data-isso-page-author-hashes="f124cf6b2f01,7831fe17a8cd"
    16    data-isso-reply-notifications-default-enabled="false"
    17    src="<站点>/isso/js/embed.min.js"></script>
  • 评论框

    1<section id="isso-thread"></section>

注意 :官网的JS路径 embed.js 不可用


使用 Isso 为 Hugo/Hexo 等静态网站添加评论功能

Isso 中文文档:自建 Isso 评论服务及其国内增强版功能介绍

hugo博客添加isso评论