Carnet de Nicolas
Journal de bord et autres pérégrinations de l’esprit

Archivage, migration et fermeture d’un ancien blog

En faisant un peu de ménage dans les flux dans mon agrégateur RSS, je me suis rendu compte qu’une bonne trentaine étaient en erreur. En regardant de plus près, soient ils étaient mal formatés (mon agrégateur est assez rigide sur ce qui est attendu), soient les blogs n’existaient simplement plus.

Dans le premier cas, c’était principalement parce que chaque blog avait été remplacé par un site qui n’a rien à voir. Je soupçonne que le nom de domaine a expiré, puis a été racheté pour que le nouveau propriétaire bénéficie de la réputation de l’ancien site. Ce qui dans les faits, revient à dire que le blog n’existe plus non plus, comme dans le deuxième cas. Pour certains blogs disparus, je suivais l’auteurice sur d’autres canaux et j’ai pu retrouver son nouveau blog, lorsqu’il y en avait un nouveau. Pour les autres, et bien, c’était fini.

Cela m’a fait penser à mon ancien blog que je souhaitais fermer : voulais-je simplement le détruire, ou au contraire conserver une partie du contenu, et prévenir les visiteurs et visiteuses ? Après presque deux décennies de bons et loyaux services, voyons comment j’ai archivé, migré certains contenus et fermé cet ancien blog tout en permettant aux agrégateurs de flux et moteurs de recherche d’être informés des changements.

Archiver

Premièrement, j’ai archivé manuellement les pages qui me tenaient à cœur sur Internet Archive pour leur permettre de rester visibles sur la Wayback Machine.

Ensuite, j’ai utilisé le logiciel HTTrack pour créer une archive complète de toutes pages du blog. En jouant avec le paramétrage, cela permet de générer toutes les pages en fichiers HTML et de récupérer en local toutes les ressources associées, y compris les images externes. On peut ainsi naviguer sur l’ancien site de façon totalement hors ligne. J’ai fait le choix de conserver cette archive pour moi.

Enfin, j’ai fait une sauvegarde de la base de données, des fichiers publics, des thèmes, et de l’ensemble du moteur de blog dans sa version actuelle. Au besoin, si par exemple j’avais oublié quelque chose de vraiment important, cela permettra de tout restaurer sur une configuration similaire.

Migrer

Parmi tous les billets publiés, je souhaitais en conserver une petite dizaine. Soit parce qu’ils me sont toujours utiles, soit parce qu’ils sont bien référencés et beaucoup visités, donc a priori utiles pour d’autres. Je les ai recréés dans mon blog actuel, en conservant la date de création d’origine. Parfois, quelques adaptations visuelles ont été nécessaires, mais rien de très compliqué. Sur chacun de ces billets, j’ai ajouté une petite note indiquant leur origine :

✍️ Cet article a été initialement publié sur nicolabricot.com.

Ensuite, pour préparer la mise en place d’une redirection globale, j’ai créé une page d’atterrissage. L’idée est d’expliquer aux internautes pourquoi iels ont été redirigé·es, un petit historique des moments clés et les articles conservés. Je suis assez fier de la frise chronologique faite uniquement en CSS.

Afin de permettre aux abonné·es du flux RSS d’être au courant, je l’ai modifié pour qu’il ne contienne qu’une seule nouvelle entrée, expliquant les changements et le déménagement. Ce flux RSS doit rester accessible à l’ancienne URL, sinon nos lecteurices ne pourront pas recevoir la mise à jour.

Fermer

Maintenant qu’on a tout préparé, pour arrêter l’ancien blog, il ne reste que ces derniers paramétrages :

  1. On s’assure que le flux RSS modifié reste accessible à la même URL.
  2. On met en place une redirection pour les billets migrés, qui redirige leur URL vers le billet équivalent sur le blog actuel.
  3. On met en place une redirection globale pour tout le trafic (sauf celui des points 1. et 2.), qui redirige vers la page d’atterrissage créée sur le blog actuel.
Alias /feed/atom /www/atom.xml

RewriteEngine On
RewriteRule ^/post/ancienne-url$ https://www.nicolas.pm/note/nouvelle-url [R=301,L]

RewriteCond %{REQUEST_URI} !feed/atom
RewriteRule ^(.*)$ https://www.nicolas.pm/p/nicolabricot.com [R=301,L]
Exemple de configuration Apache pour gérer les redirections.

Si vous utilisez la Search Console de Google ou d’autres moteurs de recherche, vous pouvez aussi leur indiquer la migration et le changement d’adresse. Cela pourrait aider à conserver le référencement de certaines pages.

C’est l’heure de dire au revoir : on peut supprimer le contenu de l’ancien blog et tous les fichiers associés. Dans plusieurs années, si on ne souhaite plus payer le nom de domaine associé, on pourra le laisser expirer. Les redirections ne fonctionneront plus, et ce sera alors la fin. À moins que quelqu’un·e rachète le domaine et s’en serve pour autre chose ?