Description précise de mon environnement

  • Hébergeur : ovh avec un plan 60gp ancien (base mysql 4 et php 4)
  • Dotclear 1.2.1 avec la configuration suivante :
    • un jeu de caractère non UTF8
    • le mode path-info

Lien indispensable : La documentation de Dotclear 2.0

Comme indiqué sur la page Mise à jour de Dotclear 1.2 vers 2, le plugin flatExport ne fonctionne que pour une version 1.2.3 ou plus. Il faut donc déjà migrer le blog vers une version 1.2.5. Afin de ne rien casser sur le serveur, le plus simple est de tout faire en local. Sous Windows, j'utilise EasyPHP et tout fonctionne très bien. Attention pour Dotclear 1.2.x il vous faut EasyPHP 1.8 et pour Dotclear 2 EasyPHP 2.0 (béta)

Migration étape par étape

  • Création de la base Mysql 5 avec l'interface du manager ovh (votre base Mysql 4 est conservée)
  • Sauvegarde du blog (par l'interface Dotclear, opération Mysql)
  • Restauration du blog sur ma version 1.2.5 locale
  • Conversion de la base en UTF8 (via l'administration Dotclear)
  • Installation du plugin flatExport sur la 1.2.5
  • Export du blog version 1.2.5 avec le plugin flatExport
  • Installation de Dotclear 2 béta 6 en local
  • Renommage dans le fichier texte créé par flatExport du répertoire dotclear/images en dotclear/public
  • Recopie de toutes vos images stockées dans dotclear/images vers dotclear/public
  • Importation du fichier texte via l'administration Dotclear 2

et voilà votre blog Dotclear 2 est opérationnel avec tous vos anciens billets.

Remarque 1 : sur un plan 60 gp ancien c'est le PHP 4 qui est activé par défaut, il faut donc positionner via un fichier .htaccess dans le répertoire d'installation de Dotclear 2 l'activation du PHP 5 comme indiqué sur la page Installer Dotclear 2 chez OVH. L'ancien blog et le nouveau blog (celui-ci) peuvent cohabiter sans problème le temps de la transition.

Remarque 2 : Contrairement à ce qui est indiqué sur la page Installer Dotclear 2 chez OVH, je n'ai pas désactivé le mod gzip et le mode path_info fonctionne très bien ainsi que la réécriture d'url pour supprimer le index.php

Remarque 3 : Après l'import de vos anciens billets, il faut réindexer une fois tous les billets (menu maintenance de l'administration). Merci au Forum Dotclear.

Remarque 4: Si la recherche tient compte de la casse (majuscule/minuscule), cela vient de la configuration de la base de données. Votre base doit être configurée avec le jeu de caractères utf8_unicode_ci.