Il s'agit d'un livre d'or de CGI à l'ancienne jouet implémenté dans Joker, un dialecte de Clojure. La ligne Shebang reflète que je l'ai écrit pour une utilisation sur le système UNIX d'accès public SDF.
Le livre d'or est un script CGI autonome sans dépendances sauf Joker 1.4.0 ou ultérieure. Comme les anciens scripts CGI, il a une configuration modifiable en haut. Les données sont stockées dans une base de données Bolt, que Joker a intégrée. Les captchas sont apatrides et utilisent HMAC pour vérifier que le défi résolu est authentique et récent. La clé secrète pour HMAC est générée automatiquement et stockée dans la base de données. C'est une raison pour interdire l'accès du public.
Il n'y a pas d'interface de gestion. Utilisez Boltbrowser pour parcourir et modifier la base de données. Pour cacher une entrée sans le supprimer:
entries du seau de boulon.hide clé avec la valeur true .Ce projet est un jouet. Je ne sais pas à quel point je vais le maintenir activement. Attendez-vous à moins de tests, de développement de fonctionnalités et de soutien que d'un projet régulier.

Vous aurez besoin d'un serveur HTTP avec CGI activé, comme Apache ou Caddy.
Téléchargez ou construisez un binaire Joker. Des binaires gratuits / net / openbsd, linux, mac et windows sont attachés aux versions de Joker. Installez le binaire sur votre serveur. Sur un système public Unix comme SDF, vous pourrez peut-être installer le binaire dans votre répertoire domestique et l'utiliser pour CGI.
Téléchargez le fichier de code source du livre d'or, guestbook.joke . Vous pouvez et devez cloner le référentiel pour suivre vos personnalisations dans GIT. Modifier le fichier. Mettez à jour la ligne Shebang vers le chemin absolu vers votre interprète Joker. Mettez à jour les paramètres comme vous le souhaitez.
Créez un répertoire comme /guestbook/ dans la racine CGI de votre serveur. Copiez votre guestbook.joke personnalisé index.cgi
Accédez au livre d'or sur votre serveur (par exemple, http: // localhost / gardingbook /) et confirmez qu'il fonctionne.
Assurez-vous que les clients Web ne peuvent pas accéder au fichier de la base de données (par exemple, http: //localhost/guestbook/guestbook.bolt avec le guestbook.bolt de fichier par défaut.
Mit. Voir la LICENSE de fichier.