Caddy 2, PWA, et IPv6

Ce blog me permet, tant bien que mal, de conserver un certain degré d’expertise technique. Je pourrais utiliser un site WordPress préinstallé sur un serveur mutualisé1. Ce serait plus simple, et probablement moins cher, si je devais valoriser le temps que je passe à bidouiller plutôt qu’à écrire. Mais ce serait moins drôle.

Caddy 2

Je veux dire, c’est drôle de se lever au petit matin d’un vendredi férié, et d’installer un nouveau serveur, chez un nouvel hébergeur de surcroit2. À midi, j’avais installé Caddy 2 et migré mes sites. Après avoir consulté la documentation du processus de mise à jour, et après m’être souvenu qu’il fallait que je change les permissions de quelques dossiers, j’ai adapté mon fichier de configuration sans grande difficulté.

J’ai emprunté quelques lignes de la configuration mon collègue Nicolas pour améliorer la mise en cache des ressources statiques :

(static) {
    @static {
        file
        path *.css *.gif *.ico *.js *.jpg *.png *.svg
    }
    header @static Cache-Control max-age=31536000
}

J’ai renforcé la politique de sécurité du serveur en forçant les connexions sécurisées avec HSTS :

(hsts) {
    header Strict-Transport-Security max-age=31536000
}

Ce faisant, j’ai définitivement cassé la compatibilité de métro[zen]dodo avec les anciens navigateurs, à mon grand désespoir. Je n’ai pas encore trouvé de solution conjuguant parfaite compatibilité descendante et parfaite sécurité ascendante.

Progressive web app

In fine, je veux proposer une version « hors ligne » de métro[zen]dodo. Cela passe, en première intention, par une feuille de style destinée à l’impression. Cela peut passer, pourquoi pas, par une compilation sous la forme d’un livre. Cela passe aussi, de manière plus immédiate, par une meilleure utilisation du stockage local et une meilleure résistance aux déconnexions.

Les progressive web applications (PWA) m’ont toujours paru obscures. J’ai largement raté la conception des web workers, et je n’écris pas de code JavaScript si je n’en ai pas absolument besoin. Je me suis largement reposé sur le travail de Raphael Wildhaber pour concevoir une PWA fonctionnelle… mais encore largement inutile. Quoique, une page « hors ligne », c’est déjà mieux que rien.

IPv6

Tout a commencé avec un tweet de Vivien Guéant, chargé de mission à l’Arcep, qui s’étonnait que le site de MacGeneration ne soit pas disponible en IPv6. Mes collègues finiront par s’en charger. Quant à moi, j’ai ajouté un enregistrement AAAA chez mon registrar, et métro[zen]dodo est désormais disponible en IPv6. Je n’avais aucune raison de ne pas le faire, et maintenant c’est fait.


  1. Comme ceux proposés par Infomaniak, qui eut hébergé mon précédent blog, ou MonArobase, qui héberge les blogs de Llu et de Jean-Christophe. ↩︎

  2. J’ai abandonné Scaleway Elements au profit de Digital Ocean. Je n’ai absolument rien à reprocher à Scaleway Elements, mais je voulais tester les nouvelles instances de Digital Ocean à Amsterdam, en attendant de trouver le prestataire de mes rêves, un petit hébergeur français dont les serveurs seraient alimentés par des énergies renouvelables. ↩︎