Transférer un site Joomla! vers un autre serveur (versions 2.5 et supérieures)

La procédure pour les sites Joomla! 2.5 et plus récents reste simple : elle est détaillée ci-après, et ne doit à mon sens s'utiliser que si une sauvegarde et restauration avec Akeeba backup n'est pas possible.

Cet article est une légère modification de celui détaillant la procédure pour les sites 1.5 et 1.6

Pour ce faire,

  • par votre client ftp, vous récupérez tous vos fichiers présents chez votre hébergeur dans le répertoire contenant Joomla!, si le site est déjà en ligne (si vous avez paramétré en local, vous les avez déjà...) ;
  • si vous devez utiliser un serveur local sur lequel rapatrier un site distant, il faudra placer une copie de ces fichiers dans un sous-dossier spécifique au site, dans "www" ou "htdocs" selon les serveurs locaux, et en supprimer le .htaccess ; si vous devez déplacer le site vers un autre serveur distant, toujours par ce client ftp, vous envoyez tous ces fichiers vers le nouveau répertoire distant, sans le fichier ".htaccess", à moins que l'hébergeur soit le même et que vous fassiez seulement un changement de pack d'hébergement chez lui, auquel cas le .htaccess devrait ne pas poser de problème de compatibilité ;
  • téléchargez le fichier MoovJla (zippé) : décompressez-le sur votre ordinateur, puis placez le fichier "MoovJla.php" à la racine de votre site ;
  • récupérez par phpMyadmin (je ne détaille pas la manière d'y accéder qui varie d'un serveur à l'autre) une sauvegarde de votre base de données, locale ou du premier hébergeur : dans la fenêtre de phpMyadmin, cliquez sur le nom de la base pour que la liste des tables apparaisse dans la fenêtre de droite, puis cliquez sur "Exporter" (il faut exporter les tables -structure et contenu-, mais pas la base dans son intégralité) ; n'utilisez pas la sauvegarde par défaut, mais passez en mode personnalisé ; dans la fenêtre suivante, sélectionnez toutes les tables de votre site Joomla! (par défaut elles devraient déjà l'être), puis cochez les cases "Désactiver la vérification des clés étrangères", "DROP TABLE", avec un export comprimé en zip ou gzip, ce qui permet d'enregistrer le fichier sur votre ordinateur, plus facile à réutiliser ;
  • sur le serveur destinataire, vous faites l'opération inverse : vous ouvrez phpMyadmin, puis la base dont vous disposez, et vous cliquez sur "Importer", "Parcourir" ; vous sélectionnez le fichier précédent et vous importez. Au cas où le fichier serait trop gros, il vous faudra peut-être le décompresser et importer le code sql par petites portions, ce qui est assez fastidieux, mais dans la plupart des cas, il n'est pas nécessaire d'en arriver là ;
  • la dernière étape consiste
    • d'une part en la mise à jour éventuelle d'un fichier .htaccess,
    • d'autre part en la correction des informations du fichier configuration.php :
      • saisissez L’URL de votre site, suivi de "MoovJla.php" (sans les guillemets mais séparé de l'URL par "/" : http://www.monsite.tld/MoovJla.php") et validez : la page de paramétrage apparaît, comportant deux sections (si une information vous signale que le fichier de configuration est en lecture seule, accédez à sa gestion dans votre client ftp pour le passer en droits 644, ou en ocal par votre gestionnaire de fichiers pour supprimer son attribut de lecture seule) :
        • la première zone correspond aux caractéristiques de connexion à la base de données, qui doivent maintenant être remplies avec celles de votre nouveau serveur (informations fournies par votre hébergeur).
          • Serveur = serveur de base de données
          • User = nom d'utilisateur (en local, "root")
          • Base de données = nom de la base de données
          • Mot de passe = mot de passe lié au nom d'utilisateur de cette base (en local "root" ou à laisser vide selon les serveurs)
        • la seconde affiche automatiquement les informations concernant le chemin d'accès aux répertoires "logs" et "tmp" : vous ne devriez pas avoir besoin de les modifier.

Validez les informations saisies et testez le site.

Une fois que vous avez constaté que le site est fonctionnel, supprimez MoovJla.php en cliquant sur le bouton adéquat. Vous pourrez ensuite récréer si besoin un fichier .htaccess adapté au serveur sur lequel vous venez de placer le site.