New Coat of Paint (Tom waits)

Voici, pour mémoire et discussion, les manipulations que j’ai faites pour faire migrer mon bleug.

Cela commence par « Pourquoi » (et vous êtes tous conviés à réagir sur le bien-fondé de certains points du Pourquoi) et continue par « Comment » (la partie la plus longue et ennuyeuse) pour terminer logiquement par « Jusqu’où ».

Pourquoi

  • Mon blog existe depuis janvier 2006, soit 6 ans (wouéééé !!!). À peu de choses près, je n’ai pas mis à jour la plate-forme de blog. Or, en 6 ans, beaucoup de choses ont évolué sur les plates-formes de blog. Pour n’en citer qu’une, qui ne vous est pas apparente mais dont je souffrais : l’identification et la gestion des commentaires « spam » (il faut savoir que j’avais 20 à 30 commentaires sur mes thibillets chaque jour. Le fait que ces 20-30 commentaires ne soient que des réclames pour du v!agra ne change rien à la popularité mondiale de ce blog).
  • À l’époque, j’avais développé un Thème de blog ( = la carosserie, l’apparence) qui était minimaliste, et pour cause : j’avais récupéré un kit développé par Kozlika, et l’avais adapté. Résultat : malgré des dizaines d’heures de travail (je ne suis pas trop doué en PHP), plusieurs personnes m’avaient dit et répété « comparé à votre blog, le site d’un monastère cistercien voué à la contemplation et au minimalisme apparaîtrait comme un Skyblog pour Pokemons (avec popups) ». Il s’agissait donc de rendre la visite et la lecture un peu plus agréables…
  • La mise à jour vers une nouvelle plate-forme devait réduire mon ratio « temps passé à revisser les boulons / temps passé à écrire » : la bidouille ne me dérange pas, m’amuse souvent, mais quand ça commence à représenter des heures et des heures cumulées, ma foi, j’aspire à plus de simplicité…

Comment

Le Blog tournait sous la plate-forme Dotclear 1.2.3 (janvier 2006, donc). Nous en sommes à Dotclear 2.4, c’est dire si de l’eau numérique a coulé sous les arcs électriques. Et comme la vie n’est pas simple, voilà la succession d’étapes et/ou retours en arrière, à ce jour :

  • J’envisageais de changer de plate-forme : passer de Dotclear à WordPress. Mais j’ai suivi mon intuition (à noter, nous y reviendrons) en me disant : « pour migrer vers une autre plate-forme, autant avoir une version de Dotclear récente, car elle me donnera plus de fonctionnalités d’export ». Donc il fallait d’abord mettre Dotclear à jour.
  • Or, on ne peut pas passer directement de la 1.2.3 à la 2.4 : en effet, la 1.2.3 fonctionne avec des bases MySQL 4.0 tandis que la 2.4 nécessite MySQL 5.0. J’ai donc, dans l’ordre :
    • Fait une sauvegarde text (flat text) du Blog 1.2.3
    • Fait une sauvegarde de la base MySQL 4.0 (tous mes thibillets, vos commentaires flous, les images, les vendeurs de v1agra, etc.)
    • Détruit la base MySQL 4.0 (car je n’ai droit qu’à une seule base dans mon abonnement, donc il faut détruire la 4.0 pour avoir le droit d’en créer une 5.0).
    • Créé une base MySQL 5.0
    • Importé la sauvegarde de la base MySQL 4.0. Ah, tiens, ça ne marche pas, le fichier n’est pas reconnu… Eh bien je suis content d’avoir fait aussi une sauvegarde en mode flat text, certes bien plus rugueuse, mais qui a l’avantage de toujours être reconnue, c’est du bête format texte genre CSV. À noter pour l’avenir : en matière de sauvegarde informatique, mieux vaut avoir ceinture et bretelles.
    • Migré Dotclear 1.2.3 vers la version 1.2.8
    • Réinstallé tous mes thibillets etc. grce au fichier flat text.
    • Installé Dotclear 2.4 en parallèle sur le serveur, dans un autre dossier.
    • Migré tout le blog en utilisant une fonctionnalité interne à Dotclear 2 : importer depuis un blog 1.2.8.
  • Et donc là, j’ai eu mon nouveau Blog, tournant sous Dotclear 2.4 et MySQL 5.0. Joie et allégresse.
  • Hélas, dans cette sordide vallée de larmes qu’on appelle la Vie, les joies se paient cash, 2 fois, principal et intérêts capitalisés ( principe judéo-chrétien). Donc, quelque part entre deux conversions sus-mentionnées, tous mes caractères spéciaux (é, è, à, ï, €…) ont sauté, remplacés par des trucs immondes (Ä{, Ÿ, Ð, etc.). Après coup, je vois peut-être d’où ça vient : l’ancien blog était en ISO-8859 et le nouveau a été déclaré en UTF 8. Et vous croyez qu’on m’aurait prévenu à un moment donné ? Eh non, il faut le découvrir quand c’est trop tard, au détour de phrases comme « il faut le d¬©couvrir aprs coup ».
  • je sais qu’à ce niveau du thibillet, j’ai perdu les 93% de mon lectorat, mais j’en connais au moins deux qui ont suivi, et que ça pourra intéresser, donc je continue. Comment résoudre ce problème des caractères spéciaux ? Un rechercher-remplacer, bien sûr. Et là, nouvelle découverte passionnante : vous prenez un fichier Flat text, qui est parfaitement lu par Dotclear. C’est donc un fichier texte. Vous l’ouvrez avec un éditeur de texte  (gedit sous Linux, Notepad sous Windows…) ou un traitement de texte (Libreoffice, Word…), vous faites les rechercher-remplacer au format texte et vous ré-envoyez ce fichier texte dans le blog Dotclear. Qui dit alors « ceci n’est pas un fichier de sauvegarde Dotclear ». Le texte n’est plus du texte.
  • Il faut donc passer par un éditeur de texte particulier, Notepad++, qui le seul, à ma connaissance, conserve le statut Flat text au fichier, même après modifcattions (rechercher-remplacer, etc.) la mauvaise nouvelle : Notepad++ est un logiciel Windows, et je n’ai plus Windows chez moi. La bonne nouvelle : ça m’a permis de tester Wine, et donc de faire tourner parfaitement ce logiciel windows sous Linux, sans Windows. Je suis un enfant, je m’émerveille chaque jour.
  • Deuxième paiement cash : les liens vers des thibillets anciens sont désormais cassés. Il semblerait que sur l’ancien blog, j’avais opté pour l’adressage de liens façon PATH_INFO et sur le nouveau, lunatique que je suis, j’aurais par erreur choisir le QUERY_STRING. Donc les anciens liens sont cassés. « Qu’à celà ne tienne ! » dis-je avec ma bonne humeur coutumière, « Je vais faire un rechercher-remplacer sous Notepad++ sous Wine sous Linux pour remplacer les anciens liens PATH_INFO dans le Flat text par un adressage nouvelle manière, en QUERY_STRING, et je n’aurai plus qu’à réimporter le Flat text sous Dotclear 2.4.8, tout cela est hyper simple, rapide, et pas énervant du tout ! »
  • Eh bien je vous le donne Émile : alors même que je respecte scrupuleusement la syntaxe et que les changements ont eu lieu (je peux les voir dans le fichier texte), l’importation me donne toujours des liens cassés.

Résumé : j’ai migré mon blog de Dotclear vers Dotclear, et j’ai eu beaucoup de problèmes successifs. Au final, mon blog est bien migré, mais au prix de liens cassés, de quelques caractères € qui ne sont pas encore remplacés, et d’un grand vide existentiel.
Je me dis alors : Dotclear, OK, c’est vu, mais maintenant on va voir si une exportation finale vers WordPress ne permet pas de simplifier les choses. Et voilà, on retrouve mon intuition du départ. Qui se révèle totalement fausse : alors qu’un vieux WordPress pouvait récupérer les infos d’un vieux Dotclear, il semble qu’un WordPress récent ne peut plus récupérer les infos d’un Dotclear récent, qui de toute façon ne propose plus de les donner à WordPress.

Jusqu’où (quousque tandem)

Plusieurs options s’ouvrent désormais à moi.

  • La mauvaise stragégie : garder en l’état, et essayer de coller des rustines jusqu’à ce que ça marche comme avant que je ne migre.
  • la stratégie bourrin mais efficace : tout effacer et réinstaller depuis le début en évitant les erreurs intermédiaires. Par exemple, réinstaller Dotclear 2.4 à la racine, en le déclarant dès le début en PATH_INFO et en ISO-8859.
  • la stratégie back to the future : prendre un vieux Dotclear (1.2.8), l’exporter dans un vieux WordPress, puis migrer vers un WordPress récent.

Des réactions ? Des idées ? Des conseils paternalistes et condescendants ?

Cette entrée a été publiée dans Non classé. Placez un signet sur le permalien.

4 Responses to New Coat of Paint (Tom waits)

  1. Tom dit :

    Stratégie Back the futur, mais ça c’est parce que je suis né dans les années 80…
    Nan mais on peut penser que la migration d’un vieux wordpress à un wordpress récentse fasse correctement…

  2. Docthib dit :

    Oui Tom, exactement, c’est pourquoi je me dis que faire « Vieux Dotclear » => « Vieux WordPress » => « WordPress récent », ça pourrait marcher. Mais il faut tout détruire de ce que j’ai fait depuis 2 semaines… 🙁

  3. ulysse dit :

    Je viens de découvrir ce billet parce que les flux rss ne fonctionnaient plus..
    En fait c’est grce au sieur Nitot qui en parlant de son discours dans votre école m’a fait penser à vous et j’ai estimé que 2 mois sans billet c’était trés improbable donc je suis venu jeter un oeil ici…

    Pas de conseils particuliers hélas, n’existe t-il pas des plugins dans dotclear pour exporter vers wordpress ou dans wordpress pour importer depuis dotclear?

  4. Docthib dit :

    Hello Ulysse,

    il existe des vieux plugins, pour les vieilles versions. Il faut que je m’y attaque, après les gros travaux qui m’occupent actuellement. Mais c’est vrai que ça a un côté pas fini, ce bleug 🙁 (et les fils RSS, alala…)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.