Tried ISSO and ......

Now I'm still amazed with isso.
It's much light-weighted......And u could comment on me annoymously.
I'm using it right now!
BTW, these two r really useful (Thanks to them for helping me out):

  1. Link 1
  2. Link 2

I'll take down what's helpful from both for me below:

Installation

  1. Python knowledge isn't required, so don't worry if you never used it. What you need, though, is to have it - and a couple of other things - installed:

    $ sudo apt-get install python3 python3-pip sqlite3 build-essential
    
  2. Enough small talk - let's install the damn thing!

    $ sudo pip3 install isso
    

Configuration

  1. /opt/isso/isso.conf (For others like SMTP, just refer to the doc)

    [general]
    dbpath = /opt/isso/comments.db
    host = http://example.com/
    
    [server]
    listen = http://localhost:8001/
    
  2. About Init Script, I'm using Debian which is using systemd, which is most Linux distributions' choice for service management. Take it for example:
    I. Create a service /etc/systemd/system/isso.service:

    [Unit]
    Description=lightweight Disqus alternative
    
    [Service]
    User=isso
    ExecStart=/usr/local/bin/isso -c /opt/isso/isso.conf run
    
    [Install]
    WantedBy=multi-user.target
    

    II. Be sure to add the user isso:

    $ sudo useradd isso
    

    III. Run the thing and check the status

    $ sudo systemctl daemon-reload && sudo systemctl start isso && sudo systemctl status isso
    

    When it's active and running, enable it so it will start and run every time u reboot into the system:

    $ sudo systemctl enable isso
    

Test

  1. Afterwards, we can make sure that all is good in the world by checking if curl http://localhost:8001/js/embed.min.js returns some minified JavaScript gibberish.

  2. As we established (and checked! -- remember kids, testing is important), Isso now runs in the background and is available at http://localhost:8001/. Let's make sure the webserver knows that. Again - I like Nginx, our company server is running Apache, so I'll cover both. The example in the Isso docs actually proxies it to a separate domain (like http://comments.example.com/), but that seems like too much hassle for my taste, so we'll stick with a sub URI like http://example.com/isso/.

Add one of the snippets below to our existing configuration(If nginx, then restart after configuring):

Nginx:

location /isso {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Script-Name /isso;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8001;
}

Apache:

<Location "/isso">
ProxyPass "http://localhost:8001"
ProxyPassReverse "http://localhost:8001"
</Location>

Insert

Visit http://example.com/isso/js/embed.min.js. If available, insert the code to comment area (If u get a 404 error it's due to something like the cache settings of ur js files, delete certain lines of it will help):

<script data-isso="//example.com/isso/" src="//example.com/isso/js/embed.min.js"></script>

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

CDN Integration

If u wanna implement CDN on it I suggest CloudFlare.

Whatever, there will always be a problem about IP with the default configuration. The mail notification about a comment will show the IP of the CDN's instead of the client's.

CloudFlare Tutorial about solution: Nginx | Apache

I'm using Nginx currently, so I could tell u how to configure in Nginx. Isso has got the variable X-Forwarded-For for showing true IP, thus there's no need in editing files of isso.

  1. Edit your nginx.conf (Not the configration file of ur site, it's the default one)

  2. Add the codes to ur http section, just like this:

    http {
    set_real_ip_from 103.21.244.0/22;
    set_real_ip_from 103.22.200.0/22;
    set_real_ip_from 103.31.4.0/22;
    set_real_ip_from 104.16.0.0/12;
    set_real_ip_from 108.162.192.0/18;
    set_real_ip_from 131.0.72.0/22;
    set_real_ip_from 141.101.64.0/18;
    set_real_ip_from 162.158.0.0/15;
    set_real_ip_from 172.64.0.0/13;
    set_real_ip_from 173.245.48.0/20;
    set_real_ip_from 188.114.96.0/20;
    set_real_ip_from 190.93.240.0/20;
    set_real_ip_from 197.234.240.0/22;
    set_real_ip_from 198.41.128.0/17;
    
    real_ip_header X-Forwarded-For;
    

    If ur Nginx supports ipv6, try the following:

    http {
    set_real_ip_from 103.21.244.0/22;
    set_real_ip_from 103.22.200.0/22;
    set_real_ip_from 103.31.4.0/22;
    set_real_ip_from 104.16.0.0/12;
    set_real_ip_from 108.162.192.0/18;
    set_real_ip_from 131.0.72.0/22;
    set_real_ip_from 141.101.64.0/18;
    set_real_ip_from 162.158.0.0/15;
    set_real_ip_from 172.64.0.0/13;
    set_real_ip_from 173.245.48.0/20;
    set_real_ip_from 188.114.96.0/20;
    set_real_ip_from 190.93.240.0/20;
    set_real_ip_from 197.234.240.0/22;
    set_real_ip_from 198.41.128.0/17;
    set_real_ip_from 2400:cb00::/32;
    set_real_ip_from 2606:4700::/32;
    set_real_ip_from 2803:f800::/32;
    set_real_ip_from 2405:b500::/32;
    set_real_ip_from 2405:8100::/32;
    set_real_ip_from 2c0f:f248::/32;
    set_real_ip_from 2a06:98c0::/29;
    
    real_ip_header X-Forwarded-For;
    

    Notes that the CloudFlare IPs above were up to date when I modified the article, check for urself. If u use another CDN or find that any of the CloudFlare IPs outdated, replace the IPs with the correct ones.

  3. Refresh and try commenting. U'll find out that the IP in the mail turns out to be ur true IP.


Kinda love Billy Idol recently!
Share with u two LIVEs: