« Migration de Moodle » : différence entre les versions

De MoodleDocs
Aller à :navigation, rechercher
 
(16 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{Installation}}{{Traduction}}
{{Installation}}
Parfois, il est nécessaire de déplacer un site Moodle d'un serveur à un autre. Par exemple, pour déplacer un site Moodle de votre machine vers un serveur dédié.
Parfois, il est nécessaire de déplacer un site Moodle d'un serveur à un autre. Par exemple, pour déplacer un site Moodle de votre machine vers un serveur dédié.


:''Astuce :'' une erreur habituelle lors d'une migration est d'oublier de modifier les informations du fichier ''[[Fichier de configuration|config.php]]'' sur le site Moodle qui a été déplacé.
{{Avertissement|Le simple fait de modifier l'URL d'accès d'un site Moodle (par exemple en passant à https) correspond à une migration ! Il '''faudra impérativement''' modifier les informations du ''[[Fichier de configuration]]'' (notamment la valeur de $CFG->wwwroot) et procéder à une [[Recherche et remplacement|modification de l'URL dans la base de données]].}}
 
Une plateforme Moodle est constituée de 3 éléments qui devront être déplacés ou recopiés :
* le code de Moodle (les fichiers PHP, JS, CSS,...) ;
* le contenu de la base de données stocké dans une autre application type MySQL, PostgreSQL,... ;
* et le dossier Moodledata !
 
Sans l'un de ces 3 éléments, la plateforme ne sera pas complète. Il faudra ajuster certaines valeurs dans ''config.php'' pour indiquer tout ce qui a changé entre le serveur 1 et le serveur 2 (adresse Internet, dossiers moodledata,...). Notez qu'il pourra être nécessaire de transformer certaines valeurs en base de données pour les liens qui seraient brisés. Pour une migration réussie, suivez les instructions ci-dessous...


== Migrer un site Moodle complet – méthode 1 ==
== Migrer un site Moodle complet – méthode 1 ==


'''Il s'agit ici de migrer un site Moodle complet d'un serveur vers un autre.''' Si vous changez de domaine ou d'adresse IP pour votre nouveau serveur, vous devrez suivre les étapes suivantes :
'''Il s'agit ici de migrer un site Moodle complet d'un serveur vers un autre.''' Si vous changez de domaine ou d'adresse IP pour votre nouveau serveur, vous devrez suivre les étapes suivantes :
* '''Mode de maintenance''' : placez votre site Moodle actuel en mode de maintenance pour empêcher toute modification dans la base de données. Ne laissez pas les administrateurs se connecter durant la migration, car il ne sont pas affectés par le mode de maintenance.
* '''Mode de maintenance''' : placez votre site Moodle actuel en mode de maintenance pour empêcher toute modification dans la base de données. Ne laissez pas les administrateurs se connecter durant la migration, car ils ne sont pas affectés par le mode de maintenance.
* '''Sauvegarde de la base de données''' : sauvegardez votre base de donnée Moodle en suivant les instructions de la page de [[Mise à jour|mise à jour]]. Cela vous donnera un fichier texte contenant l'export mysql.
* '''Sauvegarde de la base de données''' : sauvegardez votre base de donnée Moodle en suivant les instructions de la page de [[Mise à jour|mise à jour]]. Cela vous donnera un fichier texte contenant l'export mysql.
* '''Importation de la base de données''' : importez ces données sur le nouveau serveur. En cas de changement dans le nom de la base, de l'utilisateur ou du mot de passe,... pensez à adapter les paramètres du fichier ''config.php'' ($CFG->dbtype, $CFG->dblibrary, $CFG->dbhost, $CFG->dbname, $CFG->dbuser, $CFG->dbpass, $CFG->prefix et/ou $CFG->dboptions).
* '''Copie du code source Moodle''' : copiez le code de Moodle vers le nouveau serveur - profitez-en éventuellement pour faire une [[Mise à jour|mise à jour]] à la dernière version.
* '''Copie du code source Moodle''' : copiez le code de Moodle vers le nouveau serveur - profitez-en éventuellement pour faire une [[Mise à jour|mise à jour]] à la dernière version.
* '''Modification de <code>$CFG->wwwroot</code>''' : dans votre dossier Moodle, modifiez la variable <code>$CFG->wwwroot</code> dans le fichier ''config.php'' pour votre nouveau serveur.
* '''Modification de <code>$CFG->wwwroot</code>''' : dans votre dossier Moodle, modifiez la variable <code>$CFG->wwwroot</code> dans le fichier ''config.php'' pour votre nouveau serveur.
Ligne 15 : Ligne 23 :
* '''Changement de l'URL du site Moodle''' : si votre site a une nouvelle URL, il est nécessaire de substituer dans la base de données l'adresse de votre ancien site par la nouvelle. Ceci est rendu indispensable par le fait que les liens vers les images, les fichiers, etc. sont enregistrés en tant que liens ''absolus'', reposants donc sur la valeur issue de <code>$CFG->wwwroot</code> de votre ancien site. De sorte qu'en déposant la copie de votre base de données de l'ancien site vers le nouveau, les liens seront brisés. Ceci peut être aisément résolu de deux manières différentes :
* '''Changement de l'URL du site Moodle''' : si votre site a une nouvelle URL, il est nécessaire de substituer dans la base de données l'adresse de votre ancien site par la nouvelle. Ceci est rendu indispensable par le fait que les liens vers les images, les fichiers, etc. sont enregistrés en tant que liens ''absolus'', reposants donc sur la valeur issue de <code>$CFG->wwwroot</code> de votre ancien site. De sorte qu'en déposant la copie de votre base de données de l'ancien site vers le nouveau, les liens seront brisés. Ceci peut être aisément résolu de deux manières différentes :
:a) la première méthode a recourt au script [[ Recherche et remplacement |''replace.php'']].  Après avoir déposé et mis en place la base de données sur le nouveau serveur, allez avec votre navigateur internet vers l'adresse <nowiki>http://[nom-de-votre-propre-serveur.com]/admin/tool/replace/index.php</nowiki>
:a) la première méthode a recourt au script [[ Recherche et remplacement |''replace.php'']].  Après avoir déposé et mis en place la base de données sur le nouveau serveur, allez avec votre navigateur internet vers l'adresse <nowiki>http://[nom-de-votre-propre-serveur.com]/admin/tool/replace/index.php</nowiki>
:'''Nota''' : le chemin d'accès à ce script diffère selon les versions de Moodle :
:*  ~/admin/replace/ en 2.0 et 2.1
:*  ~/admin/tool/replace/ depuis 2.2


:Saisissez l'URL de votre ancien serveur (<nowiki>http://ancienserveur.com/</nowiki>) et celle de votre nouveau serveur (<nowiki>http://nouveauserveur.com/</nowiki>) et cela corrigera les tables mysql. Vous devrez également réinitialiser les liens mis en cache en redémarrant votre serveur web.
:Saisissez l'URL de votre ancien serveur (<nowiki>http://ancienserveur.com/</nowiki>) et celle de votre nouveau serveur (<nowiki>http://nouveauserveur.com/</nowiki>) et cela corrigera les tables mysql. Vous devrez également réinitialiser les liens mis en cache en redémarrant votre serveur web.


:b) La deuxième méthode utilise la fonction rechercher/remplacer d'un simple éditeur de texte afin de substituer à l'ancienne URL la nouvelle adresse dans la sauvegarde de votre ancienne base de données, avant de déposer cette sauvegarde modifiée dans la base de votre nouveau site. Par exemple, avec <code>sed</code>,
:b) La deuxième méthode utilise la fonction rechercher/remplacer d'un simple éditeur de texte afin de substituer à l'ancienne URL la nouvelle adresse dans la sauvegarde de votre ancienne base de données, avant de déposer cette sauvegarde modifiée dans la base de votre nouveau site. Par exemple, avec sed :


: <code>#sed -e 's/ancienserveur.com/nouveauserveur.com/g' oldmysqldump.sql > newmysqldump.sql</code>
::<code>sed -e 's/ancienserveur.com/nouveauserveur.com/g' oldmysqldump.sql > newmysqldump.sql</code>


:'''Nota''' : cette méthode ne remplace pas les URLs dans les blocs, car ils y sont stockés en forme base64 et ne peuvent donc pas être détectés.
:'''Nota''' : cette méthode ne remplace pas les URLs dans les blocs, car ils y sont stockés en forme base64 et ne peuvent donc pas être détectés.
Ligne 44 : Ligne 49 :
* Utiliser rsync pour copier le dossier '''moodledata''' et le dossier contenant l'installation de Moodle (par exemple '''public_html''' ou '''htdocs''') vers le nouveau serveur. Lancer pour cela la commande suivante (en remplaçant les termes en majuscules par vos propres données ; SOURCE = le dossier que vous voulez copier), pour les deux dossiers :
* Utiliser rsync pour copier le dossier '''moodledata''' et le dossier contenant l'installation de Moodle (par exemple '''public_html''' ou '''htdocs''') vers le nouveau serveur. Lancer pour cela la commande suivante (en remplaçant les termes en majuscules par vos propres données ; SOURCE = le dossier que vous voulez copier), pour les deux dossiers :
::<code>rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/</code>
::<code>rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/</code>
* Exporter la base de données existante, copier et importer le fichier exporter dans la base de données créée ci-dessus sur le nouveau serveur, en lançant :
* Exporter la base de données existante, en lançant :
::<code>mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"</code>
::<code>mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"</code>
* Copier le fichier exporté sur le nouveau serveur, et l'importer dans la base de données créée.
* Sur le nouveau serveur, modifier le fichier '''config.php''' avec les informations adéquates.
* Sur le nouveau serveur, modifier le fichier '''config.php''' avec les informations adéquates.
* Afin de corriger les liens internes à Moodle, se connecter au Moodle sur le nouveau serveur en tant qu'administrateur et utiliser l'outil de [[Recherche et remplacement|recherche et de remplacement]] pour remplacer l'ancienne URL par la nouvelle.
* Afin de corriger les liens internes à Moodle, se connecter au Moodle sur le nouveau serveur en tant qu'administrateur et utiliser l'outil de [[Recherche et remplacement|recherche et de remplacement]] pour remplacer l'ancienne URL par la nouvelle.
Ligne 55 : Ligne 61 :


==Autres éléments à prendre en considération==
==Autres éléments à prendre en considération==
===Gagner du temps en ne sauvegardant que le nécessaire===
Lorsque vous sauvegardez (ou copiez) le dossier de données (moodledata), vous pouvez omettre certains dossiers pour gagner du temps :
* /moodledata/cache
* /moodledata/localcache
* /moodledata/sessions
* /moodledata/temp
* /moodledata/trashdir 
Omettre ces dossiers permettra un gain de temps de transfert non négligeable.
===Changer le lien des images qui pointent vers l'ancien site===
===Changer le lien des images qui pointent vers l'ancien site===
So you built your Moodle Server with a <nowiki>http//192.168.0.1/Moodle</nowiki> address. Then you changed the URL for your site to <nowiki>http://OurMoodle.org/Moodle</nowiki>. You changed the Moodle config file so the CFGs point to the new paths,  but your images still point to the old url. 


One simple, quick solution is to use the Replace script in Moodle to fix this. Login as admin and enter  <nowiki>http://OurMoodle.org/admin/tool/replace/index.php</nowiki> in your browser address bar (or  <nowiki>http://OurMoodle.com/admin/replace.php</nowiki> in older versions). Use the two form boxes to change <nowiki>http://192.168.0.1/</nowiki> to <nowiki>http://OurMoodle.org/</nowiki>.
Vous avez installé votre plateforme Moodle avec l'adresse <nowiki>http//192.168.0.1/moodle</nowiki>. Puis vous avez modifié l'URL de votre site à <nowiki>http://monbeausitemoodle.org/moodle</nowiki>. Vous avez modifié les chemins dans le fichier de configuration ''config.php'', mais les images de votre plateforme pointent toujours vers l'ancienne URL.


This replace function is only supported on Moodle sites that run on MySQL or Postgres databases. See MDL-26597 and MDL-35099.
Pour corriger ceci, le plus simple est d'utiliser le script [[Recherche et remplacement|Replace]] de Moodle. Connectez-vous en tant qu'administrateur sur votre plateforme et allez sur <nowiki>http://monbeausitemoodle.org/admin/tool/replace/index.php</nowiki>. Remplissez les champs de sorte à changer <nowiki>http://192.168.0.1/</nowiki> en <nowiki>http://monbeausitemoodle.org/</nowiki>.
 
Cette fonctionnalité n'est supportée que pour les sites Moodle avec des bases de données MySQL ou Postgres. Voyez à ce sujet MDL-26597 et MDL-35099.


===Mettre à jour Moodle===
===Mettre à jour Moodle===


Lorsque vous migrez Moodle, c'est souvent une bonne idée et l'opportunité de mettre à jour Moodle vers une version plus récente. Si vous gérez votre propre serveur, suivez les instructions de [[Mise à jour| mise à jour]], sinon, voyez si votre hébergeur peut le faire pour vous.
Lorsque vous migrez Moodle, c'est souvent une bonne idée et l'opportunité de mettre à jour Moodle vers une version plus récente. Si vous gérez votre propre serveur, suivez les instructions de [[Mise à jour| mise à jour]], sinon, voyez si votre hébergeur peut le faire pour vous. Par contre, prévoyez d'effectuer d'abord la migration, et vérifiez que tout fonctionne bien '''avant''' d'effectuer la mise à jour. Cela limitera les risques de problème, et facilitera leur éventuelle recherche.


===Restaurer un seul espace de cours entre deux serveurs===
===Restaurer un seul espace de cours entre deux serveurs===


You may need to restore a single course from an old site to a new one, especially if you are testing the migration. When restoring a Moodle backup file to Moodle on a different server than the one used to create the backup, the absolute referenced links to files maybe broken. To fix this problem open the ''backup-coursename.zip'' file and edit the ''moodle.xml'' file replacing links with <code>$@FILEPHP@$</code>.
Vous pourriez avoir besoin de restaurer un seul cours d'une ancienne plateforme vers une nouvelle, notamment si vous testez la migration. Lors de la restauration d'une sauvegarde Moodle vers une plateforme sur un serveur différent de celui où a été créée la sauvegarde, les liens absolus peuvent être cassés. Pour corriger ce problème, il faut décompresser le fichier ''backup-coursename.zip'' et modifier le fichier ''moodle.xml'' en y remplaçant les liens avec <code>$@FILEPHP@$</code>.


For example, replace <nowiki>http://yourserver.com/file.php/243/</nowiki> with <code>$@FILEPHP@$</code>
Par exemple, on remplacera <nowiki>http://yourserver.com/file.php/243/</nowiki> par <code>$@FILEPHP@$</code>.
   
   
When the file is restored it will use the correct file path for the new course.
Lors de la restauration, les chemins corrects vers le nouveau cours seront insérés.


===Configurer le DNS & masquage d'adresse===
===Configurer le DNS & masquage d'adresse===
Ligne 91 : Ligne 109 :
Si vous avez effectué une copie d'un serveur de production, pour faire des tests, vous ne souhaitez pas que cette copie envoie des courriels aux inscrits. Pour cela, ajoutez la ligne suivante dans le fichier config.php :
Si vous avez effectué une copie d'un serveur de production, pour faire des tests, vous ne souhaitez pas que cette copie envoie des courriels aux inscrits. Pour cela, ajoutez la ligne suivante dans le fichier config.php :


$CFG->noemailever = true;
::<code>$CFG->noemailever = true;</code>
 
== Changement de domaine ==
Si vous migrez vers un nouveau domaine et que vous utilisiez l'[[Auto-enregistrement par courriel|auto-enregistrement par courriel]], vous devrez créer une nouvelle clef API Google. Vous trouverez les explications et liens sur [[Auto-enregistrement par courriel|l'authentification par courriel]].


==Voir aussi==
==Voir aussi==


* [[Site backup]]
* [[Sauvegarde de site]]
* [[Site restore]]
* [[Restauration de site]]
* [[Backup and restore FAQ]]
* [[FAQ de sauvegarde]]
* [http://www.youtube.com/watch?v=sFCXvRx20Bs Moving Moodle to a new server video]
* [http://www.youtube.com/watch?v=sFCXvRx20Bs Moving Moodle to a new server video]
* [http://tracker.moodle.org/browse/MDL-35099 Convert hidden search/replace script into a proper core admin tool] Tracker issue
* Demande de fonctionnalité [http://tracker.moodle.org/browse/MDL-35099 Convert hidden search/replace script into a proper core admin tool]


Discussions (en anglais) sur les forums de Using Moodle :
Discussions (en anglais) sur les forums de Using Moodle :

Dernière version du 12 mai 2019 à 07:17

Parfois, il est nécessaire de déplacer un site Moodle d'un serveur à un autre. Par exemple, pour déplacer un site Moodle de votre machine vers un serveur dédié.

Avertissement ! Le simple fait de modifier l'URL d'accès d'un site Moodle (par exemple en passant à https) correspond à une migration ! Il faudra impérativement modifier les informations du Fichier de configuration (notamment la valeur de $CFG->wwwroot) et procéder à une modification de l'URL dans la base de données.


Une plateforme Moodle est constituée de 3 éléments qui devront être déplacés ou recopiés :

  • le code de Moodle (les fichiers PHP, JS, CSS,...) ;
  • le contenu de la base de données stocké dans une autre application type MySQL, PostgreSQL,... ;
  • et le dossier Moodledata !

Sans l'un de ces 3 éléments, la plateforme ne sera pas complète. Il faudra ajuster certaines valeurs dans config.php pour indiquer tout ce qui a changé entre le serveur 1 et le serveur 2 (adresse Internet, dossiers moodledata,...). Notez qu'il pourra être nécessaire de transformer certaines valeurs en base de données pour les liens qui seraient brisés. Pour une migration réussie, suivez les instructions ci-dessous...

Migrer un site Moodle complet – méthode 1

Il s'agit ici de migrer un site Moodle complet d'un serveur vers un autre. Si vous changez de domaine ou d'adresse IP pour votre nouveau serveur, vous devrez suivre les étapes suivantes :

  • Mode de maintenance : placez votre site Moodle actuel en mode de maintenance pour empêcher toute modification dans la base de données. Ne laissez pas les administrateurs se connecter durant la migration, car ils ne sont pas affectés par le mode de maintenance.
  • Sauvegarde de la base de données : sauvegardez votre base de donnée Moodle en suivant les instructions de la page de mise à jour. Cela vous donnera un fichier texte contenant l'export mysql.
  • Importation de la base de données : importez ces données sur le nouveau serveur. En cas de changement dans le nom de la base, de l'utilisateur ou du mot de passe,... pensez à adapter les paramètres du fichier config.php ($CFG->dbtype, $CFG->dblibrary, $CFG->dbhost, $CFG->dbname, $CFG->dbuser, $CFG->dbpass, $CFG->prefix et/ou $CFG->dboptions).
  • Copie du code source Moodle : copiez le code de Moodle vers le nouveau serveur - profitez-en éventuellement pour faire une mise à jour à la dernière version.
  • Modification de $CFG->wwwroot : dans votre dossier Moodle, modifiez la variable $CFG->wwwroot dans le fichier config.php pour votre nouveau serveur.
  • Copie du dossier de données (moodledata) : déposez le contenu de votre dossier de données (vérifiez en la valeur dans $CFG->dataroot) sur le nouveau serveur.
  • Vérification des permissions : vérifiez que les permissions sur les fichiers restent les mêmes dans le nouveau dossier, et modifiez la valeur dans le fichier config.php si vous avez changé l'emplacement sur le nouveau serveur.
  • Changement de l'URL du site Moodle : si votre site a une nouvelle URL, il est nécessaire de substituer dans la base de données l'adresse de votre ancien site par la nouvelle. Ceci est rendu indispensable par le fait que les liens vers les images, les fichiers, etc. sont enregistrés en tant que liens absolus, reposants donc sur la valeur issue de $CFG->wwwroot de votre ancien site. De sorte qu'en déposant la copie de votre base de données de l'ancien site vers le nouveau, les liens seront brisés. Ceci peut être aisément résolu de deux manières différentes :
a) la première méthode a recourt au script replace.php. Après avoir déposé et mis en place la base de données sur le nouveau serveur, allez avec votre navigateur internet vers l'adresse http://[nom-de-votre-propre-serveur.com]/admin/tool/replace/index.php
Saisissez l'URL de votre ancien serveur (http://ancienserveur.com/) et celle de votre nouveau serveur (http://nouveauserveur.com/) et cela corrigera les tables mysql. Vous devrez également réinitialiser les liens mis en cache en redémarrant votre serveur web.
b) La deuxième méthode utilise la fonction rechercher/remplacer d'un simple éditeur de texte afin de substituer à l'ancienne URL la nouvelle adresse dans la sauvegarde de votre ancienne base de données, avant de déposer cette sauvegarde modifiée dans la base de votre nouveau site. Par exemple, avec sed :
sed -e 's/ancienserveur.com/nouveauserveur.com/g' oldmysqldump.sql > newmysqldump.sql
Nota : cette méthode ne remplace pas les URLs dans les blocs, car ils y sont stockés en forme base64 et ne peuvent donc pas être détectés.
Astuce : pensez à consulter le fichier sql de votre ancienne base de données afin d'y vérifier comment était référencée l'URL de votre ancien site.
Astuce : si la restauration du fichier de la base de données ne se termine pas correctement, à cause des timeout liés à un trop gros fichier, vous pouvez utiliser le script BigDump, disponible à l'adresse : http://www.ozerov.de/bigdump.php
  • Test de la migration : pour tester votre nouvelle installation, accédez à Moodle avec votre navigateur internet, à l'adresse du nouveau serveur. Lorsque vous avez vérifié qu'un certain nombre de liens dans les cours fonctionnent correctement, désactivez le mode de maintenance.

Migrer un site Moodle complet – méthode 2

Vous avez accès en ligne de commande sur les deux serveurs ? Dans ce cas, la méthode ci-dessous est très rapide et efficiente pour migrer un site Moodle.

Elle est également utile pour créer des « instantanés » d'une installation Moodle.

  • Configurer une base de données vide sur le « nouveau » serveur.
  • Mettre votre site Moodle existant en mode de maintenance.
  • Se connecter en ligne de commande sur le serveur du Moodle existant.
  • Utiliser rsync pour copier le dossier moodledata et le dossier contenant l'installation de Moodle (par exemple public_html ou htdocs) vers le nouveau serveur. Lancer pour cela la commande suivante (en remplaçant les termes en majuscules par vos propres données ; SOURCE = le dossier que vous voulez copier), pour les deux dossiers :
rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/
  • Exporter la base de données existante, en lançant :
mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"
  • Copier le fichier exporté sur le nouveau serveur, et l'importer dans la base de données créée.
  • Sur le nouveau serveur, modifier le fichier config.php avec les informations adéquates.
  • Afin de corriger les liens internes à Moodle, se connecter au Moodle sur le nouveau serveur en tant qu'administrateur et utiliser l'outil de recherche et de remplacement pour remplacer l'ancienne URL par la nouvelle.
  • Vérifier que tout fonctionne correctement.

Le tout prend environ 15 minutes.

Une fois tout ceci terminé, il reste à configurer l'éventuelle redirection DNS, quitter le mode de maintenance du nouveau site et d'éteindre l'ancien.

Autres éléments à prendre en considération

Gagner du temps en ne sauvegardant que le nécessaire

Lorsque vous sauvegardez (ou copiez) le dossier de données (moodledata), vous pouvez omettre certains dossiers pour gagner du temps :

  • /moodledata/cache
  • /moodledata/localcache
  • /moodledata/sessions
  • /moodledata/temp
  • /moodledata/trashdir

Omettre ces dossiers permettra un gain de temps de transfert non négligeable.

Changer le lien des images qui pointent vers l'ancien site

Vous avez installé votre plateforme Moodle avec l'adresse http//192.168.0.1/moodle. Puis vous avez modifié l'URL de votre site à http://monbeausitemoodle.org/moodle. Vous avez modifié les chemins dans le fichier de configuration config.php, mais les images de votre plateforme pointent toujours vers l'ancienne URL.

Pour corriger ceci, le plus simple est d'utiliser le script Replace de Moodle. Connectez-vous en tant qu'administrateur sur votre plateforme et allez sur http://monbeausitemoodle.org/admin/tool/replace/index.php. Remplissez les champs de sorte à changer http://192.168.0.1/ en http://monbeausitemoodle.org/.

Cette fonctionnalité n'est supportée que pour les sites Moodle avec des bases de données MySQL ou Postgres. Voyez à ce sujet MDL-26597 et MDL-35099.

Mettre à jour Moodle

Lorsque vous migrez Moodle, c'est souvent une bonne idée et l'opportunité de mettre à jour Moodle vers une version plus récente. Si vous gérez votre propre serveur, suivez les instructions de mise à jour, sinon, voyez si votre hébergeur peut le faire pour vous. Par contre, prévoyez d'effectuer d'abord la migration, et vérifiez que tout fonctionne bien avant d'effectuer la mise à jour. Cela limitera les risques de problème, et facilitera leur éventuelle recherche.

Restaurer un seul espace de cours entre deux serveurs

Vous pourriez avoir besoin de restaurer un seul cours d'une ancienne plateforme vers une nouvelle, notamment si vous testez la migration. Lors de la restauration d'une sauvegarde Moodle vers une plateforme sur un serveur différent de celui où a été créée la sauvegarde, les liens absolus peuvent être cassés. Pour corriger ce problème, il faut décompresser le fichier backup-coursename.zip et modifier le fichier moodle.xml en y remplaçant les liens avec $@FILEPHP@$.

Par exemple, on remplacera http://yourserver.com/file.php/243/ par $@FILEPHP@$.

Lors de la restauration, les chemins corrects vers le nouveau cours seront insérés.

Configurer le DNS & masquage d'adresse

Vous avez peut-être effectué des changements dans les entrées de DNS pour votre nouveau site Moodle. Si c'est le cas, il faudra un peu de temps pour que ces changements soient répercutés, soyez donc patient. Si votre serveur est situé derrière un pare-feu, il faudra également adapter les règles du pare-feu pour autoriser l'accès au nouveau serveur. Voyez la documentation sur masquerading.

Vérifier l'accès interne et externe

Si votre Moodle est prévu pour être accessible depuis un réseau interne et depuis internet, vérifiez que l'accès à votre site est possible, autant en interne que depuis internet.

Problème de corruption du Moodledata pendant un transfert FTP

Lors du transfert d'un site Moodle vers un autre hébergement, il est possible que les fichiers déposés et les images, stockées dans le dossier Moodledata, ne soient plus disponibles. Pour vous prémunir de ce dysfonctionnement, vous devrez effectuer le transfert de fichier en "mode binaire" (voir la configuration de votre client FTP).

Consulter ces messages : ici en français, ici en anglais

Copie d'un serveur de production, pour test

Si vous avez effectué une copie d'un serveur de production, pour faire des tests, vous ne souhaitez pas que cette copie envoie des courriels aux inscrits. Pour cela, ajoutez la ligne suivante dans le fichier config.php :

$CFG->noemailever = true;

Changement de domaine

Si vous migrez vers un nouveau domaine et que vous utilisiez l'auto-enregistrement par courriel, vous devrez créer une nouvelle clef API Google. Vous trouverez les explications et liens sur l'authentification par courriel.

Voir aussi

Discussions (en anglais) sur les forums de Using Moodle :