Installation de Moodle

De MoodleDocs
Aller à :navigation, rechercher


Avant tout, pas de panique :-)

Cette page explique de quelle manière installer Moodle. Moodle fonctionne sur un nombre important de configurations que nous allons presque toutes aborder dans cette page. Veuillez prendre le temps de chercher et lire les parties qui vous concernent le plus.

Planification

Installer Moodle nécessite de planifier un minimum les choses, en fonction de l'importance de l'installation que vous vous apprêtez à réaliser. Voici quelques pistes que vous pourriez envisager :

  • Souhaitez-vous vraiment installer Moodle par vous-même ? Consultez Finding and Selecting A Web Host.
  • De quelles compétences disposez-vous et êtes-vous prêt à apprendre ? Administrer un serveur web sécurisé et stable est une entreprise sérieuse avant même d'envisager installer Moodle. Cette documentation prend le parti que vous disposez d'un minimum de connaissances de la plateforme sur laquelle vous vous apprêtez à installer Moodle (ou que vous êtes prêts à apprendre certaines choses).
  • Quelle est la configuration nécessaire pour le matériel et la solution d'hébergement ? Moodle s'adapte facilement, mais en fonction de la configuration dont vous avez besoin, vous pourriez être intéressé par différentes solutions : l'hébergement mutualisé, un serveur virtuel dédié, votre propre serveur web, votre propre installation de plusieurs serveurs web.
  • Quelle plateforme logicielle allez-vous utiliser ? Cela dépend de vos compétences ou de la politique ayant trait dans votre entreprise ou votre institution. Vous avez peut-être la possibilité de faire vous-même le choix ?
  • Quelles sont vos besoins en termes de support ? Est-ce que le support gratuit et communautaire de Moodle.org sera suffisant ou avez-vous besoin d'un support professionnel ?
  • Comment allez-vous organiser les sauvegardes ?

Configuration nécessaire

Moodle est principalement développée pour fonctionner sous un environnement Linux Apache, MySQL et PHP (parfois appelée la plateforme LAMP). En cas de doute, il s'agit du choix le plus sûr à faire (en plus d'être la plus répandue). Vous trouverez d'autres options possibles dans la section logiciel qui suit.

La configuration recommandée de base pour Moodle est la suivante :

Matériel

  • Espace disque : 200 Mo de libre pour le code source de Moodle et autant que nécessaire en fonction de vos besoins de stockage. 5 Go nous paraît être un minimum réaliste.
  • Processeur : 1 GHz au minimum, 2 GHz dual core ou mieux recommandé.
  • Mémoire : 512 Mo au minimum, 1 Go ou plus est fortement recommandé. Un minimum de 8 Go de RAM est habituel pour un gros serveur en production. La règle générale est que Moodle peut prendre en charge de 10 à 20 utilisateurs simultanément par Go de RAM disponible, mais cela varie en fonction du matériel et du logiciel que vous avez choisis ainsi que du type d'utilisation. « Simultanément » signifie des processus du serveur web en mémoire qui travaillent en même temps (c'est à dire des utilisateurs qui interagissent avec le système dans une fenêtre de quelques secondes), ce qui est différent du nombre d'utilisateurs connectés.
  • Sauvegarde : au moins la même quantité d'espace disque que ci-dessus, sur une unité de stockage différente pour conserver une sauvegarde de votre site.

Toutes ces recommandations dépendent fortement de la combinaison du matériel et des logiciels utilisés, ainsi que du type d'utilisation et de charge envisagées.

Si vous mettez en place un nouveau site, il vaut mieux expérimenter avec une petite installation pilote et acquérir ainsi quelque expérience. Une question telle que « Quel matériel dois-je acquérir pour 1000 utilisateurs ?» ne récoltera probablement aucune réponse utile.

Logiciel

Sur le serveur

  • Un système d'exploitation (!). Tout système capable de faire fonctionner les logiciels suivants. Bien que le choix dépendra des performances recherchées et des compétences disponibles. Linux et Windows restent les choix les plus populaires (et pour lesquels un support est disponible). Si vous êtes libre du choix, Linux est généralement reconnu comme une plateforme optimale. Moodle est aussi régulièrement testé sur les systèmes d'exploitation Windows XP/2000/2003, Solaris 10 (Sparc et x64), Mac OS server et Netware 6.
  • Un serveur web. Principalement Apache ou IIS. Moodle n'est pas entièrement testé (mais devrait fonctionner) avec lightttpd, nginx, cherokee, zeus et LiteSpeed. Moodle refusera de s'installer sur d'autres serveurs web. Votre serveur web devra être correctement configuré pour interpréter les fichiers PHP. Le numéro de la version n'est pas critique mais essayez d'utiliser le serveur web dans la version la plus récente que vous ayez à disposition.
  • PHP - la version minimale est actuellement la 7.3. Un certain nombre d'extensions sont requises. Vous trouverez la liste sur la page de PHP. L'installation sera stoppée lors de la vérification des pré-requis si les extensions requises ne sont pas présentes.
  • Une base de données. MySQL et PostgreSQL sont les bases de données prises en compte lors du développement et les plus testées. Elles disposent toutes-deux d'une importante documentation et d'un support. Oracle et MSSQL sont pleinement prises en charge (notez que certaines extensions optionnelles peuvent ne pas avoir été testées avec ses bases de données) mais la documentation et l'aide en ligne ne sont pas aussi développées que pour MySQL/PostgreSQL. En cas de doute, préférez MySQL (davantage de documentation) ou PostgreSQL (meilleure stabilité/performance). Vous aurez besoin de l'extension PHP appropriée (configurée si besoin) pour la base de données de votre choix.

Les prérequis systèmes exacts de chaque version de Moodle sont visible depuis les notes de mise à jour de chacune des versions.

Pour le poste client

  • Vos utilisateurs ou clients accèdent à Moodle depuis le navigateur internet sur leurs ordinateurs/tablettes/smartphones. Tous les navigateurs modernes devraient fonctionner (mais Internet Explorer 6 et les versions antérieures ne sont pas prises en charge). Le système d'exploitation n'est pas important mais vous aurez besoin de logiciels pour consulter les fichiers que vous chargerez sur Moodle (par ex. si vous chargez des fichiers Microsoft Word, alors tous vos utilisateurs auront besoin du même logiciel pour les lire).

Mettre en place votre serveur

... ou votre ordinateur de bureau, si vous testez simplement Moodle. Les possibilités sont nombreuses pour installer les logiciels de base afin de créer un serveur, et ceux-ci dépendent largement de vos choix. De la documentation complémentaire est disponible sur Installing AMP.

Si vous utilisez un serveur hébergé, tout cela devrait déjà avoir été fait. Assurez-vous cependant (et surtout pour les serveurs mutualisés) que vous comprenez et savez de quelle manière modifier les paramètres de PHP (par ex. file upload maxmimums). Cela peut varier du tout au tout en fonction des hébergeurs.

Télécharger et copier les fichiers

IMPORTANT : Téléchargez Moodle uniquement depuis l'un des serveurs de moodle.org. D'autres versions (par exemple celle à base d'un assistant d'installation applicatif ou depuis un dépôt de distribution Linux) ne garantissent pas le bon fonctionnement, les mises à jour ou toute assistance de Moodle.

Trois possibilités s'offrent à vous :

  • Téléchargez la version de votre choix depuis https://download.moodle.org/ et décompressez le fichier...
  • OU Récupérez le code depuis le dépôt Git (méthode recommandée pour les développeurs et qui facilite également les mises à jour) :
$ git clone -b MOODLE_33_STABLE git://git.moodle.org/moodle.git 

... cela récupère une copie complète du dépôt Moodle et sélectionne la branche de la dernière version stable. Pour davantage de détails sur Git, consultez Git pour administrateurs.

N'importe laquelle de ces méthodes créera un dossier appelé moodle, contenant nombre de fichiers et de dossiers.

Vous pouvez soit copier le dossier complet dans le dossier de votre serveur web, dans quel cas votre site sera accessible depuis http://votreserveurweb.com/moodle, ou vous pouvez copier tous les contenus directement dans le dossier de votre serveur web, dans quel cas votre site sera simplement accessible depuis http://votreserveurweb.com. Consultez la documentation pour votre système et/ou serveur web si vous n'êtes pas sûr.

Astuce : Si vous téléchargez Moodle sur votre ordinateur personnel et que vous le chargez dans l'espace disque de l'hébergeur, décompressez le fichier directement depuis le dossier de l'hébergeur si vous en avez la possibilité (vérifiez votre gestionnaire de fichiers). Si ce n'est pas possible, vérifiez que l'envoi des fichiers n'omette aucun fichier durant le chargement.
  • Sécurisez les fichiers Moodle : Il est vital que les fichiers ne soient pas inscriptibles par l'utilisateur système du serveur web. Par exemple, sur Unix/Linux (en tant que root) :
# chown -R root /chemin/vers/moodle
# chmod -R 0755 /chemin/vers/moodle
# find /chemin/vers/moodle -type f -exec chmod 0644 {} \;

(L'administrateur/le super-utilisateur possède les privilèges sur les fichiers et ils ne sont inscriptibles que par lui - les autres utilisateurs n'y accèdent qu'en lecture)

Créer une base de données vide

Créez ensuite une nouvelle base de données (vide) pour votre installation. Vous devez trouver et conserver les informations suivantes pour les utiliser lors de la dernière étape de l'installation :

  • dbhost - le nom de l'hôte du serveur de base de données. Probablement localhost si la base de données et le serveur web sont la même machine, auquel cas, le nom du serveur de base de données
  • dbname - le nom de la base de données. Peu importe son nom, par ex. moodle
  • dbuser - le nom d'utilisateur pour la base de données. Peu importe son nom, par ex. moodleuser - n'utilisez jamais le compte du root/super-utilisateur, mais créez un compte propre à cette base de données avec le minimum de permissions.
  • dbpass - le mot de passe de l'utilisateur ci-dessus

Si votre site est hébergé, vous devriez trouver une page de gestion des bases de données depuis le panneau de contrôle (ou demandez à votre administrateur). Pour toutes les autres personnes ou si vous avez besoin d'instructions détaillées, consultez la page correspondante à votre serveur de base de données :

Créer le dossier de données (moodledata)

Moodle nécessite un répertoire pour stocker tous ses fichiers (les fichiers qui y seront chargés, les données temporaires, les données de sessions, etc.). Le serveur web doit pouvoir écrire dans ce répertoire. Sur les installations importantes, veillez à allouer suffisamment d'espace disque pour une utilisation optimale.

IMPORTANT : Ce répertoire NE DOIT PAS être accessible directement depuis le web. Il s'agirait d'une faille de sécurité importante. N'essayez pas de le mettre à la racine de votre serveur web ou dans le dossier contenant le code de Moodle, car elle refusera de s'installer. Vous pouvez le placer à tout autre emplacement de votre choix.

Voici un exemple (Unix/Linux) de création du répertoire et de la configuration de ses permissions pour que tous les utilisateurs du système puisse y écrire des données. Cette configuration n'est valable que lorsque le serveur n'est pas partagé. N'hésitez pas à en discuter avec votre administrateur pour évoquer l'ensemble des scénarii vous concernant.

# mkdir /chemin/vers/moodledata
# chmod 0777 /chemin/vers/moodledata

Sécuriser le répertoire moodledata dans un dossier web

Cette configuration vaut pour le cas où vous utilisez un serveur hébergé et que vous n'avez pas d'autres options que de placer le répertoire « moodledata » dans un dossier accessible depuis le web. Vous pouvez le sécuriser en créant un fichier .htaccess dans le dossier « moodledata ». Cette configuration ne fonctionne pas sur tous les systèmes, n'hésitez pas à contacter votre hébergeur ou votre administrateur. Le fichier .htaccess créé ne doit contenir que les lignes suivantes :

order deny,allow
deny from all

Lancer l'installation de Moodle

Il est maintenant temps de lancer le programme d'installation pour créer les tables dans la base de données et configurer votre nouveau site. La méthode conseillée est d'utiliser le programme d'installation en ligne de commande. Si vous ne pouvez pas l'utiliser pour quelque raison que se soit (par ex. sur un serveur Windows), le programme d'installation en mode graphique est toujours disponible.

Programme d'installation en ligne de commande

Il est recommandé de lancer le programme d'installation en ligne de commande en tant qu'utilisateur du serveur web. Consultez la documentation de votre système pour le connaître (par ex. sous Ubuntu/Debian, il s'appelle « www-data », sous Centos/RedHat, « apache »)

  • Exemple de l'utilisation du programme d'installation en ligne de commande (en tant que root - substituez par « www-data » pour l'utilisateur du serveur web) :
# chown www-data /chemin/vers/moodle
# cd /chemin/vers/moodle/admin/cli
# sudo -u www-data /usr/bin/php install.php
# chown -R root /chemin/vers/moodle

La commande chown permet au script d'écrire un nouveau fichier config.php. Vous trouverez davantage d'informations sur ces options en utilisant :

# php install.php --help

Vous serez amené à configurer des paramètres que nous n'abordons pas sur cette page. En cas de doute, validez simplement les paramètres proposés par défaut. Si vous souhaitez avoir tous les détails de cette méthode d'installation, consultez la page Administration en ligne de commande

Programme d'installation web

Pour lancer le script web du programme d'installation, rendez-vous à l'adresse de votre site Moodle depuis votre navigateur internet.

Le processus d'installation vous affichera différentes pages de configuration. Vous devrez accepter les copyright, créer les tables dans la base de données, renseigner les informations du compte de l'administrateur ainsi que les informations du site en lui-même. La création des tables dans la base de données peut prendre du temps, soyez patient ! Vous finirez par être redirigé sur la page d'accueil de Moodle avec une invitation à créer un nouveau cours.

Il vous sera demandé de télécharger le nouveau fichier de configuration config.php et de le copier dans le dossier d'installation de Moodle. Suivez simplement les instructions à l'écran.

Configuration finale

Configuration dans Moodle

De nombreuses options sont disponibles depuis le panneau d'administration de Moodle (accessibles depuis le bloc « Réglages », puis « Administration du site » depuis la page d'accueil). Voici quelques options importantes que vous souhaiterez certainement modifier :

  • Réglages > Administration du site > Plugins > Output des messages > Courriel : Configurez votre serveur smtp et les paramètres d'authentification si nécessaire (pour que votre Moodle puisse envoyer des courriels).
  • Réglages > Administration du site > Serveur > Chemins système : Renseignez les chemins vers les binaires de du, dot et aspell.
  • Réglages > Administration du site > Serveur > HTTP: Si vous êtes derrière un pare-feu, vous devrez renseigner les identifiants pour votre proxy dans la section « Proxy web ».
  • Réglages > Administration du site > Lieu > Fuseaux horaires : Cliquez sur le bouton pour être sûr que les informations des fuseaux horaires sont à jour.

Dernières choses à faire...

  • Configurer Cron : Les tâches d'arrière plan de Moodle (par ex. envoyer les notifications des forums, sauvegarder les cours) sont réalisées par un script que vous pouvez faire exécuter à des moments précis de la journée. Ce script est connu sous le nom de « cron ». Veuillez vous référer à la documentation sur cron.
  • Configurer les sauvegardes : Consultez les pages Sauvegarde de site et Automated course backup.
  • Vérifier que l'envoi de courriels fonctionne : Créer des utilisateurs de test avec des adresses de courriel valides et envoyez leur des messages. Assurez-vous qu'ils reçoivent bien des copies des messages. Si ce n'est pas le cas, vérifiez les paramètres dans Réglages > Administration du site > Plugins > Output des messages > Courriel.
  • Sécuriser votre site Moodle : Consultez la page Security recommendations.

L'installation est terminée :)

Si quelque chose ne se déroule pas comme prévu...

Voici différentes choses que vous pouvez essayer...

  • Consultez la page FAQ d'installation
  • Vérifiez les permissions sur les fichiers avec attention. Est-ce que votre serveur web peut lire (mais pas écrire) dans le dossier de Moodle ? Est-ce que votre serveur web peut lire et écrire dans votre dossier moodledata ?
  • Vérifiez les permissions de la base de données. Avez-vous bien créé un utilisateur pour votre base de données qui dispose des droits nécessaires pour votre configuration ? (spécifiquement si votre serveur web et votre serveur de bases de données sont des machines différentes) ?
  • Si vous rencontrez des problèmes pour créer le fichier config.php, vous pouvez le faire manuellement en copiant le fichier config-dist.php (à la racine du répertoire Moodle) et en le renommant config.php. Modifiez directement les paramètres du site et de la base de données depuis le fichier. L'installation se poursuivra sans encombre.
  • Une fois que votre fichier config.php est configuré (voir l'astuce précédentes), vous pouvez le modifier pour activer les options de débogage (dans la section 8). Cela vous fournira davantage d'informations pour vous aider à détecter le problème. Si vous y avez accès, vérifiez les fichiers log de votre serveur web.
  • Vérifiez à nouveau les fichiers php.ini et .htaccess. Leurs paramètres sont-ils corrects (par ex. memory_limit) ? Avez-vous modifié les bons fichiers php.ini et .htaccess et (si nécessaire) avez-vous redémarré le serveur web pour appliquer les changements ?
  • Avez-vous installé des extensions, des thèmes ou tout autre code avant de commencer l'installation ? Si oui, retirez-les et essayez à nouveau (ils peuvent être cassés ou incompatibles).
  • Expliquez votre problème dans le forum sur l'assistance technique. MERCI de lister les versions de vos logiciels, d'expliquer ce que vous avez fait, ce qui est arrivé et les messages d'erreur que vous obtenez. Expliquez ce que vous avez essayé. Il n'y a rien de pire que « il n'y a rien qui fonctionne », alors que même une page blanche signifie quelque chose !

Instructions relatives à certaines plateformes

Note : La plupart des informations présentes est fournie par la communauté. Elles n'ont peut-être pas été vérifiées et peuvent ne plus être à jour. Veuillez les lire en complément des informations données ci-dessus.

Voir aussi