HtmGem/index.gmi

71 lines
4.1 KiB
Plaintext
Raw Normal View History

2021-03-08 23:48:07 +00:00
# HtmGem, voir Gemini à travers HTTP
2021-03-09 00:51:45 +00:00
Il ne reste quà ajouter une règle de ré-écriture dURL (//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 😄
2021-03-08 23:48:07 +00:00
### Nginx
```
# Ce texte doit être placé dans la configuration du serveur.
2021-03-09 00:51:45 +00:00
index index.php index.gmi index.html
2021-03-08 23:48:07 +00:00
rewrite ^(.+\.gmi)$ htmgem/?url=$1;
```
### Apache
```
# Ce texte peut se placer à la racine du site dans un fichier ".htaccess".
2021-03-09 00:51:45 +00:00
DirectoryIndex index.php index.gmi index.html
2021-03-08 23:48:07 +00:00
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.
2021-03-09 00:51:45 +00:00
🢂 Appeler cette présente page directement, en cliquant ci-après. Elle devrait être formatée exactement comme actuellement :
2021-03-08 23:48:07 +00:00
=> index.gmi
🢂 Enfin, pour vérifier que le fichier //index.gmi// est automatiquement appelé quand le fichier //**.gmi**// nest pas indiqué :
=> / Lien vers la racine du site
2021-03-09 10:26:31 +00:00
———————————————————— ————————————————————
# 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 lorsquun fichier ayant le même nom que la page mais avec lextension **.css** existe. Dans ce cas, il est utilisé.
Lorsque loption css est activé dans la configuration (voir //rewrite// plus haut) dautres comportements sont possibles :
2021-03-09 11:02:04 +00:00
* &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=**<autre nom>** : Le fichier htmgem/css/<autre nom>.css est utilisé en tant que style externe.
* &style=**/<path>** : Le fichier indiqué (chemin absolu) est utilisé en tant que style externe.
* &style=**source** : Le code source de la page est envoyée au navigateur, voir ci-après…
* &style=**pre** : Le code source de la page est envoyée au navigateur encadré par des //<pre>//, voir ci-après…
2021-03-09 10:26:31 +00:00
## Réécriture dURL pour afficher le code source
2021-03-09 11:02:04 +00:00
Par défaut, le code source du fichier **.gmi** nest pas accessible extérieurement puisquil est interprété à la volée par HtmGem. Il est possible cependant dajouter laffichage
2021-03-09 10:26:31 +00:00
Pour obtenir le source avec un lien du type
2021-03-09 11:02:04 +00:00
=> index.gmi.source Envoie le code source, le navigateur laffichera comme une longue ligne. À utiliser en ligne commande avec **wget**!
=> index.gmi.pre Affiche le code source dans le navigateur, layant adapté avec la balise **<pre>**.
Il faut ajouter les lignes suivantes dans la réécriture dURL, ici pour Nginx :
2021-03-09 10:26:31 +00:00
> rewrite ^(.+\.gmi)\.source$ /htmgem/?url=$1&style=source;
2021-03-09 11:02:04 +00:00
> rewrite ^(.+\.gmi)\.pre$ /htmgem/?url=$1&style=pre;
2021-03-09 10:26:31 +00:00
## Tester les styles
Modifier la configuration du server web fonctionne mais est assez lourd. On peut tester un style en particulier de la façon suivante :
> https://site.tld/htmgem/index.php?url=/url/page.gmi&style=<…>
En accédant de cette façon à la page, on reproduit ce que fait le serveur web lors de la réécriture dURL. On peut changer le style à la volée.
———————————————————— ————————————————————
2021-03-08 23:48:07 +00:00
# Quand tout marche…
2021-03-09 10:26:31 +00:00
Parmi les fichiers et répertoires distribués, seuls sont utiles :
* **htmgem/index.php** : Il se charge de traduire le gemtext en HTML
2021-03-09 11:02:04 +00:00
* **htmgem/css/htmgem.css** : Sil manque, laffichage sera dépourvu de style — littéralement.
Les autres peuvent être supprimés (y compris ce présent fichier) bien quils ne présentent aucun danger. Ils restent nécessaires au développement du projet et sont disponibles sur le site de HtmGem.