:-y

Un blog statique

mercredi 25 avril 2012 - 17:46

Avant de me lancer dans ce blog, j'ai longtemps hésité entre les différentes méthodes et moteurs de blogs existants. Dans l'optique de l'auto-hébergement, il me fallait un outil qui soit simple et efficace. Dans mes recherches, je me suis donc intéressé aux moteurs de blogs statiques et il en existe beaucoup (32 static website generator et d'autres).

J'ai été surpris de voir qu'il en existait très peu (pas) en php (php s'utilise aussi en ligne de commande après tout). Python est sans doute le langage de programmation qui ressort le plus. Seulement voilà, je voulais aussi avoir la possibilité de générer des pages dynamiques comme pour ajouter des commentaires. Le problème, c'est que ces outils utilisent des services externes, comme disqus... Oui, mais moi je ne voulais pas.

La solution que j'ai choisie est l'utilisation d'un cache local. Le principe est tout simple. Les pages statiques sont générées en fonction des besoins. Quand un utilisateur veut accéder à une page, si la page existe dans le cache local, elle est appelée, sinon elle est générée et stockée dans le cache. C'est une solution intermédiaire entre statique et dynamique.

Bien sûr, tout n'a pas été aussi simple et je ne garantis pas qu'il n'y ait pas de bogue. Un détail qui m'avait échappé est le problème des captchas dans les commentaires. Un captcha dans un fichier du cache n'a aucun sens, aussi, j'ai dû ajouter un bouton qui au lieu d'envoyer directement le commentaire, génère un captcha avant. Une étape de plus avant de pouvoir commenter. Cette étape n'est présente que si l'option du cache est activée dans la configuration. Je ne l'ai pas encore activée, j'avais peur que cela vous empêche de commenter :-p

Dans les news en plus du cache, j'ai ajouté la possibilité d'autoriser ou pas les commentaires pour chaque article. Il est possible d'arrêter temporairement l'ajout de commentaires, sans perdre ceux qui ont déjà été postés.

Dans les prochaines améliorations de kriss blog, je vais penser à enregistrer automatiquement les articles en cours d'édition. Pourquoi ? Tout simplement, parce qu'après une heure d'inactivité, la session est perdue. Sauf que je n'y avais pas pensé, mais rédiger un article ça peut prendre facilement bien plus qu'une heure. Et oui, vous ne le saviez pas, mais il m'est déjà arrivé de perdre un article. Celui sur les captchas, j'ai dû le faire deux fois et la deuxième fois il était forcément moins bien. Ça m'apprendra, j'aurai dû faire un copier-coller avant de l'envoyer.
New comment







 __   ___  __            
|  \ |    /  \ |  | |  / 
|__/ |__  \__/ \__/ |_/  
| \  |    /  \    | | \  
|  \ |    \__/ \__/ |  \