Isso : un serveur de commentaires similaire à Disqus
Auto-héberger son service de commentaires, c'est possible.
L’absence de solutions efficaces d'hébergement de commentaires m'avait mené à fermer les commentaires sur mon blog, mode cyclique dans la blogosphère francophone.
Il m'était possible d'avoir recours à un service du genre de Disqus : j'avais d'ailleurs essayé ce dernier pour presque immédiatement l'abandonner. La liste de griefs à l'encontre de tels services est longue comme le bras et rejoint une partie des critiques m'ayant mené à la tenue d'un fork du thème utilisé ici : centralisation des contenus, dépendance à un tiers, vente de données, traçage des lecteurs, absence de maîtrise sur le service, absence de consentement de la part du lecteur concernant le recours à un service commercial qui lui serait imposé, la liste s'étend à n'en plus finir.
Cependant, un service comme Disqus permet d'intégrer des commentaires à un moteur de blog statique qui n'intègre pas une telle fonctionnalité (comme Ghost déployé ici ou Jekyll pour ne citer que ceux auxquels je me suis essayé). Les commentaires sont toujours-déjà exportés, leur intégration peut suivre plus ou moins aisément les changements de moteur de blog pour peu que l'adresse des articles ne soit pas complètement chamboulée.
Bref, les avantages d'une externalisation du service de commentaires par rapport au moteur de blog est intéressant — imparable pour moi qui maintenant utilise Ghost.
C'est ainsi que j'ai trouvé mon bonheur avec Isso — merci Neros —, un service léger que j'ai pu installer en quelques minutes sur mon serveur.
Isso est un serveur de commentaires léger écrit en Python et en Javascript. L'évolution des fonctionnalités est appréciable, le support est très sympathique, et même si c'est un peu spartiate pour le moment (pas encore d'interface d'administration des commentaires, je valide chaque commentaire par retour de mail), ça fait très bien son boulot.
J'utilise un processus supervisor
pour contrôler ce service.
[program:isso]
command = /path/to/isso/bin/isso -c /path/to/isso/isso.conf run
directory = /path/to/isso
user = isso
autostart = true
autorestart = true
stdout_logfile = /var/log/supervisor/isso.log
stderr_logfile = /var/log/supervisor/isso_err.log
Pour mettre à jour, il est possible de composer un alias
à ajouter au fichier de configuration de Bash ou d'une alternative à ce dernier (alias update-isso='...'
)
cd /path/to/isso; ./bin/pip install --upgrade isso
Puis, redémarrer le processus supervisor
.
supervisorctl restart isso
N.B. : Le thème que j'utilise affiche le dernier article en page de garde. Or, Isso utilise l'URL relatif de la page visitée pour servir les commentaires adéquats, créant ainsi une différence entre l'article repris en page de garde et son URL effectif. Pour corriger cela, il faut modifier le code d'intégration comme suit :
<section id="isso-thread" data-isso-id="{{url relative="true"}}"></section>