Ceci est le code source de mon site Web persan personnel. Le persan, également connu sous le nom de farsi, s'écrit de droite à gauche, mais certaines personnes utilisent l'écriture romaine pour écrire la langue persane dans les applications de messagerie et les réseaux sociaux.
Ce référentiel peut être utile à toute personne souhaitant créer un nouveau site Web de droite à gauche. Je résout progressivement les problèmes que j'ai rencontrés lors de la rédaction de nouveaux articles sur mon site Web. Ce site Web est réalisé à l'aide du générateur de site statique Jekyll.
Avoir une section de commentaires sur un site Web véritablement statique (un tas de documents en effet) est impossible. Pour les formulaires HTML, ils doivent être gérés sur un serveur. Ce site Web utilisait Disqus au début, puis Netlify Forms et maintenant un script CGI sur mon propre serveur auto-hébergé. Le script stocke les soumissions dans une base de données sqlite3. Voir le schéma.sql pour le modèle de données. Le script de build exporte les commentaires de la base de données sqlite3 vers des fichiers de données. Ces fichiers sont à leur tour utilisés pour générer les commentaires statiques lors de la création de pages.
J'utilise nginx et fcgiwrap pour exécuter le script. Certaines variables d'environnement sont nécessaires, telles que l'emplacement de la base de données et une valeur simple comme solution au puzzle.
La dernière section de commentaires utilise un script CGI ainsi qu'une base de données sqlite3. Pour exécuter des scripts CGI, j'ai utilisé fcgiwrap. Après l'installation sur Ubuntu, j'ai activé le fcgiwrap.service
. J'utilise le bloc suivant pour gérer le chemin cgi-bin
sur nginx :
location /cgi-bin/ {
gzip off;
fastcgi_pass unix:/var/run/fcgiwrap.socket;
include /etc/nginx/fastcgi_params;
fastcgi_param ALEF_DB "/path/to/my/sqlite/db";
fastcgi_param ALEF_PUZZLE "puzzle_answer";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
Le formulaire de commentaire soumet une requête POST à l'URL cgi-bin/submit
qui sera gérée par ce script. Le scripts/rebuild_commends.py
est mis à jour pour reconstruire les commentaires de la base de données sqlite3. Le chemin doit être disponible dans la variable d'environnement ALEF_DB
. Voir le Makefile pour les commandes de construction.
Suivez les étapes suivantes pour créer votre propre site Web :
Afin de créer correctement le site Web, vous devez nommer le référentiel forké différemment de votre nom d'utilisateur. Si vous le placez dans un référentiel tel que votre nom d'utilisateur.github.io, Github utilisera son propre générateur Jekyll pour créer votre site Web, peu importe ce que vous mettez dans la branche gh-pages . Bonne écriture !