<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Hugo on Gatto Land</title>
        <link>https://gatto.land/fr/tags/hugo/</link>
        <description>Recent content in Hugo on Gatto Land</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>fr</language>
        <lastBuildDate>Thu, 15 May 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://gatto.land/fr/tags/hugo/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>Hello World ! - Reconstruire ce site avec Hugo et Cloudflare Pages</title>
            <link>https://gatto.land/fr/p/hello-world/</link>
            <pubDate>Thu, 15 May 2025 00:00:00 +0000</pubDate>
            <guid>https://gatto.land/fr/p/hello-world/</guid>
            <description>&lt;img src=&#34;https://gatto.land/p/hello-world/Logo_of_Hugo.png&#34; alt=&#34;Featured image of post Hello World ! - Reconstruire ce site avec Hugo et Cloudflare Pages&#34; /&gt;&lt;p&gt;Cet article marque la relance de ce site web avec &lt;strong&gt;Hugo&lt;/strong&gt; et &lt;strong&gt;Cloudflare Pages&lt;/strong&gt;. Après de premières expérimentations avec GitHub Pages et WordPress, j’ai migré le site vers un flux de publication statique plus facile à maintenir, plus simple à gérer avec un système de contrôle de version, et plus robuste du point de vue de la sécurité.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;p&gt;&lt;picture&gt;&lt;source type=&#34;image/avif&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Cloudflare_hu_bf995b3bda0ae58e.avif 480w, https://gatto.land/p/hello-world/Logo_of_Cloudflare_hu_6de4728c48733327.avif 512w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;source type=&#34;image/webp&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Cloudflare_hu_5154e65ef08ea7b7.webp 480w, https://gatto.land/p/hello-world/Logo_of_Cloudflare_hu_fa40e8c6b522a830.webp 512w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;img alt=&#34;Logo de Cloudflare&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;722px&#34; data-flex-grow=&#34;301&#34; height=&#34;170&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://gatto.land/p/hello-world/Logo_of_Cloudflare.jpg&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Cloudflare_hu_f43c4797f7943a8f.jpg 480w, https://gatto.land/p/hello-world/Logo_of_Cloudflare.jpg 512w&#34; width=&#34;512&#34;&gt;&lt;/picture&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;chronologie-de-la-migration-du-site&#34;&gt;Chronologie de la migration du site&#xA;&lt;/h2&gt;&lt;table&gt;&#xA;&#x9;&lt;thead&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Année&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Plateforme&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Enseignement principal&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/thead&gt;&#xA;&#x9;&lt;tbody&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;2017&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;strong&gt;GitHub Pages (Jekyll)&lt;/strong&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;A fourni une première introduction utile à la publication fondée sur Git, mais les possibilités de conception et de fonctionnalités sont devenues limitées avec le temps.&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;2020&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;strong&gt;WordPress&lt;/strong&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Offrait un environnement d’édition visuelle pratique, mais nécessitait une maintenance continue, une gestion des extensions et une surveillance de la sécurité.&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;2025&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;strong&gt;Hugo + Cloudflare Pages&lt;/strong&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;A établi un flux de travail statique et fondé sur Git, avec des déploiements plus rapides, moins de dépendances à l’exécution et une meilleure maintenabilité.&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;h2 id=&#34;pourquoi-jai-quitté-wordpress&#34;&gt;Pourquoi j’ai quitté WordPress&#xA;&lt;/h2&gt;&lt;p&gt;WordPress reste une plateforme de publication puissante, en particulier pour les sites web dynamiques et les équipes éditoriales qui ont besoin d’un système de gestion de contenu accessible depuis le web. Cependant, pour un site personnel consacré à la recherche et à la documentation technique, la charge de maintenance est devenue disproportionnée par rapport à mes besoins réels de publication.&lt;/p&gt;&#xA;&lt;p&gt;Deux points liés à la sécurité étaient particulièrement importants :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;7 966 nouvelles vulnérabilités ont été divulguées dans l’écosystème WordPress en 2024&lt;/strong&gt;, soit une &lt;strong&gt;augmentation de 34 %&lt;/strong&gt; par rapport à 2023, ou environ 22 nouvelles vulnérabilités par jour (Patchstack, 2025).&lt;/li&gt;&#xA;&lt;li&gt;Le jeu de données de Sucuri sur les incidents de 2022 indiquait que &lt;strong&gt;96,2 % des sites CMS piratés de son échantillon utilisaient WordPress&lt;/strong&gt; (Sucuri, 2023).&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Ma propre installation WordPress a été compromise par l’intermédiaire d’une extension obsolète. L’incident a entraîné une altération de la page d’accueil et la perte de l’accès administrateur. Comme je ne disposais pas d’une sauvegarde récente, la récupération de la base de données n’était pas réellement praticable. Cette expérience a mis en évidence les limites de mon ancien flux de travail : le site dépendait trop fortement d’une base de données active, d’extensions tierces et de routines de maintenance manuelle.&lt;/p&gt;&#xA;&lt;p&gt;&lt;picture&gt;&lt;source type=&#34;image/avif&#34; srcset=&#34;https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_5e067a75f9b91e65.avif 480w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_c0ac2c82c3d0182.avif 672w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_d7d6962062ebebc.avif 768w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_2a436c38bd799eb0.avif 960w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;source type=&#34;image/webp&#34; srcset=&#34;https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_b074f6ea34be8406.webp 480w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_46904401d4122939.webp 672w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_5cdb21e911d40fea.webp 768w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_be774fd50568065c.webp 960w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;img alt=&#34;Illustration d’un incident de sécurité web&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;320px&#34; data-flex-grow=&#34;133&#34; height=&#34;720&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code.jpg&#34; srcset=&#34;https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_b485cc3a1d830cc.jpg 480w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_ba5cb857ca9a0aad.jpg 672w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code_hu_d717b3f36101b898.jpg 768w, https://gatto.land/p/hello-world/Cliche_Hacker_and_Binary_Code.jpg 960w&#34; width=&#34;960&#34;&gt;&lt;/picture&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;enseignements-opérationnels&#34;&gt;Enseignements opérationnels&#xA;&lt;/h2&gt;&lt;p&gt;Le processus de migration a clarifié plusieurs enseignements pratiques pour la gestion du site à long terme.&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;La gestion du nom de domaine doit être automatisée.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;J’avais auparavant laissé expirer le domaine &lt;strong&gt;&lt;code&gt;jiyuuneko.com&lt;/code&gt;&lt;/strong&gt;. Il a été enregistré par une autre partie peu de temps après. Le renouvellement automatique est désormais considéré comme un élément de l’infrastructure de base du site.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Le contrôle de version doit servir de couche centrale de sauvegarde.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;Un site statique stocké dans Git est plus facile à auditer, restaurer et redéployer qu’un site fondé sur une base de données sans sauvegardes fiables.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Une surface d’exécution plus réduite est plus facile à gérer.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;La publication statique ne supprime pas tous les risques de sécurité, mais elle réduit l’exposition en supprimant le besoin d’un CMS exécuté côté serveur, d’une exécution PHP et d’une base de données MySQL active.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;&lt;picture&gt;&lt;source type=&#34;image/avif&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Hugo_hu_5d8a5df7f71fef99.avif 480w, https://gatto.land/p/hello-world/Logo_of_Hugo_hu_c034ae3f0a218b90.avif 512w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;source type=&#34;image/webp&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Hugo_hu_d05934b2bf730f91.webp 480w, https://gatto.land/p/hello-world/Logo_of_Hugo_hu_89e801938b76d6e4.webp 512w&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34;&gt;&lt;img alt=&#34;Logo de Hugo&#34; class=&#34;gallery-image&#34; data-flex-basis=&#34;877px&#34; data-flex-grow=&#34;365&#34; height=&#34;140&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://gatto.land/p/hello-world/Logo_of_Hugo.png&#34; srcset=&#34;https://gatto.land/p/hello-world/Logo_of_Hugo_hu_58a57cac2f0588a4.png 480w, https://gatto.land/p/hello-world/Logo_of_Hugo.png 512w&#34; width=&#34;512&#34;&gt;&lt;/picture&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;pourquoi-hugo-et-cloudflare-pages&#34;&gt;Pourquoi Hugo et Cloudflare Pages&#xA;&lt;/h2&gt;&lt;p&gt;Hugo et Cloudflare Pages correspondent à l’objectif actuel de ce site : publier des notes structurées, des réflexions de recherche, de la documentation technique et des mises à jour de projets avec une charge opérationnelle minimale.&lt;/p&gt;&#xA;&lt;p&gt;Les principaux avantages sont les suivants :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Génération statique rapide.&lt;/strong&gt; Hugo peut générer des pages rapidement, ce qui convient à une archive croissante d’articles, de notes et de documentation.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Publication fondée sur Git.&lt;/strong&gt; Le contenu est rédigé en Markdown, suivi dans Git et déployé au moyen d’un flux de travail reproductible.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Charge de maintenance réduite.&lt;/strong&gt; Il n’y a pas de tableau de bord WordPress, de pile d’extensions, d’environnement PHP ni de base de données de production à maintenir.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Distribution à la périphérie du réseau.&lt;/strong&gt; Cloudflare Pages sert les fichiers statiques via le réseau mondial de Cloudflare, ce qui peut améliorer les temps de chargement pour les lecteurs situés dans différentes régions.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Aperçus de déploiement intégrés.&lt;/strong&gt; Les aperçus de pull requests facilitent l’examen des changements avant leur publication sur le site en production.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;HTTPS et contrôles de sécurité.&lt;/strong&gt; Cloudflare fournit un HTTPS automatique et des fonctions de sécurité configurables qui soutiennent un environnement de déploiement plus maîtrisé.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;ce-que-vous-pouvez-attendre-de-ce-site&#34;&gt;Ce que vous pouvez attendre de ce site&#xA;&lt;/h2&gt;&lt;p&gt;Le site se concentrera sur des écrits orientés vers la recherche et la pratique, notamment :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;des notes de recherche sur le paysage ;&lt;/li&gt;&#xA;&lt;li&gt;la résilience urbaine et les infrastructures durables ;&lt;/li&gt;&#xA;&lt;li&gt;les flux de publication numérique ;&lt;/li&gt;&#xA;&lt;li&gt;la documentation technique pour la maintenance de ce site web ;&lt;/li&gt;&#xA;&lt;li&gt;des réflexions professionnelles sur des projets et des notes de développement de recherche.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Le nouveau site est disponible à l’adresse &lt;strong&gt;&lt;a class=&#34;link&#34; href=&#34;https://gatto.land&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://gatto.land&lt;/a&gt;&lt;/strong&gt;. L’ancien site WordPress n’est plus l’environnement principal de publication, et le flux de travail actuel est conçu pour être plus stable, transparent et maintenable sur le long terme.&lt;/p&gt;&#xA;&lt;hr&gt;&#xA;&lt;h3 id=&#34;références-et-crédits-des-images&#34;&gt;Références et crédits des images&#xA;&lt;/h3&gt;&lt;p&gt;Cloudflare. (2016, September 27). Cloudflare logo [SVG logo]. Wikimedia Commons. &lt;a class=&#34;link&#34; href=&#34;https://commons.wikimedia.org/wiki/File:Cloudflare_Logo.svg&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://commons.wikimedia.org/wiki/File:Cloudflare_Logo.svg&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Coelho, E., &amp;amp; YellowIcon. (2008, May 2). Stachledraht DDoS attack diagram [SVG image]. Wikimedia Commons. &lt;a class=&#34;link&#34; href=&#34;https://commons.wikimedia.org/wiki/File:Stachledraht_DDos_Attack.svg&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://commons.wikimedia.org/wiki/File:Stachledraht_DDos_Attack.svg&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Francia, S., &amp;amp; Parr, B. (2014, May 28). Logo of Hugo the static website generator [SVG logo]. Wikimedia Commons. &lt;a class=&#34;link&#34; href=&#34;https://commons.wikimedia.org/wiki/File:Logo_of_Hugo_the_static_website_generator.svg&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://commons.wikimedia.org/wiki/File:Logo_of_Hugo_the_static_website_generator.svg&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Patchstack. (2025). &lt;em&gt;State of WordPress Security in 2025&lt;/em&gt;. &lt;a class=&#34;link&#34; href=&#34;https://patchstack.com/whitepaper/state-of-wordpress-security-in-2025/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://patchstack.com/whitepaper/state-of-wordpress-security-in-2025/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Sucuri. (2023). &lt;em&gt;2022 Hacked Website Report&lt;/em&gt;. &lt;a class=&#34;link&#34; href=&#34;https://sucuri.net/reports/2022-hacked-website-report/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://sucuri.net/reports/2022-hacked-website-report/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Whelan, D. (2016, May 24). &lt;em&gt;Cliche Hacker and Binary Code (26946304530)&lt;/em&gt; [Photograph]. Wikimedia Commons. CC0. &lt;a class=&#34;link&#34; href=&#34;https://commons.wikimedia.org/wiki/File:Cliche_Hacker_and_Binary_Code_%2826946304530%29.jpg&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://commons.wikimedia.org/wiki/File:Cliche_Hacker_and_Binary_Code_(26946304530).jpg&lt;/a&gt;&lt;/p&gt;&#xA;</description>
        </item></channel>
</rss>
