Un peu d'épice?
μ | 📰 | | 📧 |

    bla : Moteur de commentaires

    bla est un petit (~400 LOC) CGI écrit en C (rapide) sur/pour OpenBSD (unveil, pledge). Il doit pouvoir fonctionner sur d'autres systèmes avec quelques ajustements.

    Fonctionnalités

    Installation

    Récupérez bla ici : https://dev.ybad.name/bla.tgz.
    Déompressez l'archive puis éditez le fichier config.h.
    Compilez.

    $ ftp https://dev.ybad.name/bla.tgz
    $ tar xvzf bla.tgz
    $ cd bla
    $ vi config.h
    $ make
    # make install
    

    Activer slowcgi :

    # rcctl enable slowcgi
    # rcctl start slowcgi
    

    En supposant que bla sera à aessible à “https://foo.bar/bla”, configurez httpd:

    location "/bla" {
        fastcgi
        root "/cgi-bin/bla.cgi"
    }
    

    Rechargez httpd : # rcctl reload httpd

    Créez un dossier pour stocker les commentaires selon ce que vous avez configuré dans la variable dbdir du config.h :

    # install -o www -g daemon -m 0755 -d /var/www/bla-db
    

    Copiez le fichier bla.js sur votre serveur web et modifiez votre code HTML là où vous souhaitez voir les commentaires :

    <div id="bla"></div>
    <script src="/bla.js"></script>
    

    Configuration

    Pour configurer bla, éditez le fichier config.h puis recompilez.

    Modération

    Tous les fichiers dont le nom commence par moderateme (définit dans le config.h) sont ignorés. Il faut les renommer pour les accepter. Par exemple :

    doas -u www mv /var/www/bla-db/_articles_1_html/_1.txt \
        /var/www/bla-db/_articles_1_html/1.txt
    

    Vous voudrez peut-être créer un script pour vous simplifier la vie.

    Pour être alerté de la présence de nouveaux ommentaires, un script check_for_comments.sh est intégré à l'archive. Éditez-le selon votre configuration et votre adresse mail puis créez une tâche cron :

    @hourly /home/foo/bin/check_for_comments.sh
    

    Vous recevrez un email contenant quelque chose comme :

    /var/www/bla-db/file/path/comment1.txt
    pseudo
    comment
    
    /var/www/bla-db/file/path/comment2.txt
    another one
    comment
    

    N'hésitez pas à les améliorer et à m'envoyer vos suggestions.