# HtmGem, voir Gemini à travers HTTP Il ne reste qu’à ajouter une règle de ré-écriture d’URL (//URL Rewriting//). Si vous pouvez lire ce texte en ayant demandé //htmgem.php// avec le navigateur, il ne reste que cette dernière étape à franchir 😄 ### Nginx ``` # Ce texte doit être placé dans la configuration du serveur. index index.php index.gmi index.html rewrite ^(.+\.gmi)$ htmgem/?url=$1; ``` ### Apache ``` # Ce texte peut se placer à la racine du site dans un fichier ".htaccess". DirectoryIndex index.php index.gmi index.html RewriteEngine on RewriteRule ^(.+\.gmi)$ htmgem/?url=$1 ``` Par la suite, * Quand un fichier se terminant par //.gmi// sera demandé, HtmGem le traduira à la volée en HTML. * Quand seul le répertoire sera demandé (http:/​/site.tld/path) le fichier //index.gmi// sera automatiquement choisi. ## Tester HtmGem Il est supposé que HtmGem est installé à la racine du site dans un répertoire //HtmGem//. Sinon, il faudra simplement adapter les liens. 🢂 Appeler cette présente page directement, en cliquant ci-après. Elle devrait être formatée exactement comme actuellement : => index.gmi 🢂 Enfin, pour vérifier que le fichier //index.gmi// est automatiquement appelé quand le fichier //**.gmi**// n’est pas indiqué : => / Lien vers la racine du site ———————————————————— ———————————————————— # Configuration avancée avec les styles Par défaut, le style est incorporé dans chaque page récupérée par le navigateur web. Le même style est utilisé pour toutes les pages, //htmgem/css/htmgem.css//, sauf lorsqu’un fichier ayant le même nom que la page mais avec l’extension **.css** existe. Dans ce cas, il est utilisé. Lorsque l’option css est activé dans la configuration (voir //rewrite// plus haut) d’autres comportements sont possibles : * &style=source : le code source de la page est envoyée au navigateur, voir ci-après… * &style=htmgem : utilise le style par défaut, mais en tant que fichier externe * &style=none : la page HTML est envoyée sans style * &style= : le fichier htmgem/css/.css est utilisé en tant que style externe * &style=/ : le fichier indiqué (chemin absolu) est utilisé en tant que style externe ## Réécriture d’URL pour afficher le code source Pour obtenir le source avec un lien du type => index.gmi.source Il faut ajouter la ligne suivante pour la réécriture d’URL : > rewrite ^(.+\.gmi)\.source$ /htmgem/?url=$1&style=source; # Quand tout marche… Parmi les fichiers et répertoires distribués, seuls sont utiles : * **htmgem/index.php** : Il se charge de traduire le gemtext en HTML * **htmgem/css/htmgem.css : S’il manque, l’affichage sera dépourvu de style — littéralement. Les autres peuvent être supprimés (y compris ce présent fichier) bien qu’ils ne présentent aucun danger. Ils restent nécessaires au développement du projet et son disponible sur le site de HtmGem.