Pour installer Chamilo, vous aurez besoin d'un serveur Web, d'une base de données et d'un client FTP (ou d'une façon de transférer les fichiers vers le serveur, de préférence sécurisée, comme sFTP par exemple, pour ne pas compromettre la sécurité du futur serveur Chamilo).
La plateforme fonctionne sur la plupart des systèmes d'exploitation :
GNU/Linux, BSD, UNIX
Windows (XP, Vista, 7, 8, 10)
Mac OS X
Pour les serveurs, il est recommandé d'installer un « serveur » en mode WAMP (Windows) ou LAMP:
Linux (kernel 3.0 ou supérieur recommandé), avec n'importe quelle distribution (nous recommandons cependant Debian ou Ubuntu)
Apache HTTPd (version 2.2 ou supérieure avec mod_PHP ou FPM) ou Nginx avec FPM
MySQL (version 5.1 ou supérieure) ou MariaDB en versions 5 ou 10
PHP (version 5.6 ou supérieur, mais nous recommandons sérieusement 7.2 ou supérieure pour des raisons de performances)
Lors de la création du site, en ligne ou en local, et de la base SQL, l'hébergeur fournit (généralement) des paramètres qui seront nécessaires au cours de l'installation :
le nom du serveur FTP,
le login pour ce serveur,
le mot de passe pour ce serveur,
le nom du serveur SQL (s'il est différent du serveur FTP),
le nom de la base de données,
le mot de passe pour cette base.
Sous GNU/Linux, la plupart des distributions permettent facilement de configurer un serveur LAMP. Dans ce tutoriel, la distribution GNU/Linux Ubuntu 15.04 est utilisée comme exemple.
Installation d’Apache HTTPd (dans sa version 2) :
user@user: sudo apt-get install apache2
Installation de MySQL :
user@user: sudo apt-get install mysql-server
Installation de PHP pour Apache HTTPd et MySQL :
user@user: sudo apt-get install libapache2-mod-php5 php5-mysqlnd php5-gd php5-curl php5-json php5-intl php5-mcrypt
Notes à propos de l’utilisation de Nginx :
La configuration de Nginx pour son utilisation avec Chamilo est totalement différente de celle d’Apache HTTPd ; D’abord parce que ce premier n’a pas d’intégration avec PHP comme mod_PHP pour Apache, il faut donc utiliser le système générique CGI pour communiquer avec un interpréteur PHP externe. C’est exactement ce que PHP FPM offre, il s’interface très facilement avec Nginx et il apporte des fonctionnalités supplémentaires intéressantes (notamment au niveau des performances).
Ensuite, parce que Nginx ne supporte pas l’interprétation des fichiers .htaccess, utilisés intensivement par Chamilo, ce qui fait qu’il faut implémenter la même chose spécifiquement pour Nginx.
Le processus d'installation vous demandera quelques informations au sujet de la configuration de votre système. Lisez attentivement les questions et répondez-y en connaissance de cause. Si vous ne savez pas, vous pouvez généralement appuyer sur la touche « Entrée » pour utiliser l'option par omission et passer à l'étape suivante.
Pour ceux d'entre vous qui souhaitent utiliser Chamilo localement pour effectuer des tests ou des modifications, nous recommandons l'installation de Xdebug et du module de développement de PHP, le tout au travers de la commande :
user@user: sudo apt-get install apache2 mysql-server libapache2-mod-php5 php5-mysqlnd php5-gd php5-curl php5-json php5-intl php5-mcrypt php5-xdebug php5-xhprof php5-dev
Attention, l'utilisation de Xdebug peut avoir de sérieuses répercutions sur l'efficacité de votre portail. Il est donc conseillé, même si vous l'avez initialement installé, de le désactiver si vous passez en production (voir configuration de PHP dans php.ini ou dans votre VirtualHost).
Enfin, sur serveur en production à usage intensif, nous recommandons l'utilisation d'un système de mémoire cache de PHP ainsi que la lecture du guide d'optimisation joint dans le répertoire documentation de votre paquet Chamilo.
Vous pouvez également utiliser Memcached pour le stockage de sessions. Nous laissons l'activation de cet élément à votre bon jugement, sachant qu'une mauvaise configuration de ce module peut causer plus de problèmes qu'il n'en résout.
Au cas où vous auriez déjà une installation de Chamilo et qu'une nouvelle version de Chamilo viendrait à être publiée, il est fortement recommandé de mettre à jour votre plateforme pour profiter de nouvelles fonctionnalités, mais surtout des corrections de failles de sécurité et d'anomalies détectées dans les versions antérieures.
Avant de mettre votre installation à jour, il faut absolument faire une sauvegarde complète du dossier de Chamilo et de la base de données.
En tant qu'administrateur, il est possible d'activer la notification de mise à jour de la version dans l'onglet « Administration », bloc « Chamilo.org » :
Illustration : Administration - Bloc Chamilo
Il suffit de cliquer sur le bouton « Activer la vérification de version » pour que l'option s'active :
Illustration : Administration - Bloc Chamilo (suite)
À chaque publication de nouvelle version, un message apparaîtra pour indiquer sa disponibilité. Notez que cette fonctionnalité transférera occasionnellement l'URL de votre portail, son nombre d'étudiants et son nombre de cours à l'Association, qui utilisera ces informations pour mieux promouvoir Chamilo.
Sur le site de Chamilo, télécharger l'archive au format souhaité puis la décompresser dans le dossier souhaité.
Une seule méthode permet de garantir une mise à jour sans faille :
Ne pas effacer le dossier précédent, sinon tous les anciens fichiers de configuration seront perdus.
Copier simplement le nouveau dossier de Chamilo par-dessus l'ancien.
dans le cas de l’utilisation d’une distribution GNU/Linux, copier l'intégralité du nouveau dossier vers l'ancien, ex.:
Ensuite, reproduire les actions réalisées à la fin de l'installation et documentées dans la section «Derniers réglages d'installation de Chamilo».
Se connecter au site et vérifier que tout est en ordre.
Téléchargez la source sur la page de téléchargement de Chamilo et décompressez-la (avec un outil de décompression tel que 7-zip sous Windows ou tar sous Linux/MacOS).
Si le serveur est distant (c'est-à-dire que vous n'êtes pas directement connecté à la machine par un clavier et un écran), envoyez l'archive grâce au client FTP (ou en SSH) vers l'espace en ligne (transférez tous les fichiers qui se trouvent dans le dossier chamilo – attention, parfois le transfert de fichiers par FTP est interrompu et l'installation ne peut alors s'effectuer correctement, veillez à vérifier que tous les fichiers ont bien été transférés en les envoyant une seconde fois en marquant l'option Ne pas écraser les fichiers existants).
Si c'est une installation locale, il suffit de copier les fichiers dans le dossier web de votre serveur (sur notre Ubuntu, dans /var/www).
Ex: user@user:(sudo) mv /home/user/Bureau/chamilo /var/www
Note: Il peut être utile de renommer le dossier une fois décompressé.
Chamilo peut être installé dans n'importe quel répertoire. Choisissez la racine du site (DocumentRoot) pour que la plateforme soit directement accessible à l'adresse « http://www.mondomaine.com/ », par exemple.
Le dossier où copier les fichiers de Chamilo doit être accessible en lecture par l'utilisateur système du serveur Web (soit « www-data » sur notre Ubuntu, ou httpd ou encore nobody sur d'autres systèmes Linux). À distance, il faut pouvoir changer les permissions (droits) sur les dossiers et les fichiers à travers un accès FTP, SSH ou autre. Certains répertoires devront également être accessibles en écriture, mais cette information sera indiquée sur la page de pré-requis du processus d'installation.
Une fois les fichiers de Chamilo copiés sur le serveur, allez à l'adresse « http://www.mondomaine.com/chamilo » ou, en local, à l'adresse « http://localhost/chamilo », selon le répertoire où a été déposé le dossier.
Si vous avez pu configurer un hôte virtuel (ou VirtualHost en anglais), il faudra probablement charger directement « http://www.hotevirtuel.com/ » sans le suffixe chamilo.
Illustration : Installation - Écran d'accueil
Vous devrez ensuite suivre une série d'étapes pour préciser les différents paramètres de la plateforme. Ces étapes sont quasiment identiques qu'elles soient effectuées en local ou à distance.
Gardez en mémoire qu'à chaque étape de l'installateur, vous pouvez abandonner le processus et consulter le guide d'installation. Veuillez vous référer au guide d’utilisation si vous avez le moindre doute ou problème au moment de l'installation. Cela évitera de demander de l'aide inutilement à l'équipe de développement, et lui permettra de ne pas se déconcentrer avec des problèmes récurrents et dont les solutions sont déjà documentées.
Cet écran vous propose le choix de la langue pour l'installation de Chamilo.
Depuis la version 1.8.8, votre langue est détectée automatiquement via les paramètres de votre navigateur, et cet écran vous demande simplement de confirmer que la langue détectée est correcte.
Attention, ceci n'est pas la langue dans laquelle sera configurée votre plateforme Chamilo, mais bien la langue du processus d'installation, rien de plus.
Illustration : Installation - Choix de la langue
Cette étape permet de vérifier si votre serveur dispose bien de tous les éléments pour une installation correcte et complète de Chamilo:
Illustration : Installation – Pré-requis d'extensions
Notez que les pré-requis déjà couverts par votre système sont notés en vert, ceux qui sont obligatoires mais absents sont notés en rouge, et ceux qui ne sont pas présents mais pas non plus obligatoires sont notés en orange.
Presque tous les pré-requis concernent l'installation de PHP et proposent un lien vers plus de détails. Les paramètres recommandés représentent des variables que vous pouvez modifier dans votre fichier de configuration de PHP (php.ini) ou dans la configuration de votre hôte virtuel.
Illustration : Installation - Pré-requis de configuration
À la fin des pré-requis, vous retrouverez une section Permissions sur les répertoires et fichiers.
Illustration : Installation - Pré-requis (suite et fin)
Par défaut, sous GNU/Linux, l'écriture n'est pas autorisée sur les dossiers. Il faut changer les droits d'accès aux fichiers pour optimiser la sécurité et donner les droits suffisants à l'utilisateur correspondant au serveur Web. Cela sert à confiner les droits lors de l'exécution d'un service (en l'occurrence le serveur Web) et éviter qu'un pirate ne prenne trop facilement le contrôle de votre serveur. Sous Windows, c'est généralement plus simple par défaut (mais beaucoup moins sûr) et les permissions sont déjà suffisantes (mais trop permissives). En d'autres mots, la procédure est inversée : on part de quelque chose de peu sûr et on restreint les droits, alors que sous Linux on part de quelque chose de sûr et on étend les droits selon les besoins.
Note : Chamilo est régulièrement révisé (une fois par an) pour éviter les failles de sécurité qui mettraient en danger votre serveur. Vous pouvez être tenu au courant des dernières failles de sécurité rencontrées et corrigées en vous abonnant à notre liste de courriels de sécurité: http://lists.chamilo.org/listinfo/security ou sur http://support.chamilo.org/projects/chamilo-18/wiki/Security_issues. Alternativement, vous pouvez suivre notre fil d'information Twitter : http://twitter.com/chamilosecurity
En local, sous Ubuntu, allez dans le répertoire où se trouve le dossier « Chamilo ». Donnez les permissions suffisantes à l'utilisateur « www-data » (il s'agit de l'utilisateur en charge du serveur Web Apache HTTPd) et rafraîchissez votre navigateur. Si vous utilisez un autre système d'exploitation, adaptez la procédure selon les règles de celui-ci.
Ex: user@user:/var/www$ chown -R www-data:www-data chamilo/
Cliquer sur « + Nouvelle installation ».
Note : si vous exécutez la mise à jour d'une version antérieure de Chamilo, ce chapitre n'est pas totalement adéquat. Consultez plutôt le chapitre 2.3 : Mise à jour de la plateforme Chamilo. Nous vous recommandons également la lecture du manuel d'installation et de mise à jour de Chamilo, en anglais (traduction disponible partiellement en français), présent dans le répertoire documentation/__de votre paquet Chamilo.
Ici, on vous explique que «Chamilo est un logiciel libre distribué sous la licence GNU General Public Licence (GPL) » (dans sa version 3) et qu'une partie de son contenu est publiée sous la licence BY-SA Creative Commons.
Pour passer à l'étape suivante, vous devez lire la licence et l'accepter. Vous trouverez d'autres versions (dans votre langue) de la licence si vous le désirez, en vous connectant au site de la Free Software Foundation, qui est l'organisme officiel édictant cette licence. Si vous avez déjà eu l'occasion de lire la licence GNU/GPLv3 et que vous êtes familier avec Creative Commons et que vous êtes d'accord avec les termes de ces licences, vous pouvez immédiatement cocher la case et passer à l'étape suivante. Ces licences n’ont en rien été modifiées.
Illustration : Installation - Licence
Une section facultative est disponible au-dessous du bloc d'approbation de la licence. Le formulaire qui s'y trouve nous permettra de vous contacter au cas où l'Association Chamilo organiserait un événement près de chez vous, ou pour vous annoncer qu'un nouveau fournisseur officiel est disponible dans votre pays (au cas où vous auriez besoin de services professionnels). Ceci n'est pas obligatoire, mais nous utiliserons vos données de contact avec respect et elles nous aideront de toute façon à promouvoir les activités de l'Association Chamilo.
Dans cette étape, on vérifie que le système de gestion de bases de données (SGBD) fonctionne correctement:
Illustration : Installation - Paramètres MySQL
Pour cette vérification il vous faudra compléter les différents champs proposés. Ces éléments vous sont donnés lors de la location de l'hébergement ou, s'il est installé localement, vous les avez définis lors de la mise en place du serveur LAMP.
Hôte base de données: le nom du serveur de base de données SQL. Si c'est une installation locale, le serveur MySQL est probablement lui aussi local, et son nom sera par défaut : « localhost ».
Port: facultatif, représente le port TCP/IP au travers duquel se fera la connexion à la base de données sur l'hôte donné
Utilisateur base de données: le nom de l'utilisateur de votre base de données. Si c'est une installation locale, le nom sera par défaut « root », mais nous vous recommandons la création d'un autre utilisateur pour votre base de données Chamilo, car utiliser « root » pourrait générer de grands risques de sécurité inutiles.
Mot de passe base de données: le mot de passe qui a été donné/créé lors de la création/location de la base de données, en même temps que l'utilisateur. En local, le mot de passe par défaut est généralement vide mais ce n'est pas une situation recommandée.
Base principale de Chamilo: ici, il est possible de changer le nom de la base de données qui sera visible sur PhpMyAdmin.
Remarque: Dans les versions antérieures à la 1.9.0, il était possible de choisir l’installation en utilisant une ou plusieurs bases de données. Aucune de ces deux options n'était idéale cependant : l'option de multiples bases de données connaissait parfois de sérieux problèmes d'efficacité, mais occasionnait toujours d'importants maux de têtes aux développeurs. Depuis la version 1.9, tout a été simplifié et ordonné, de sorte qu'il ne soit plus nécessaire de poser cette question lors de l'installation.
Vérifiez les données puis cliquez sur « vérification de la connexion à la base de données ». Si cela ne fonctionne pas, le mot de passe est peut-être incorrect.
Une fois que tout est vérifié et correct, passez à l'étape suivante.
Remarque: Si un message sur fond orange apparaît comme dans la capture d'écran ci-dessus, c'est qu'il existe déjà une base de données portant ce nom, et que l'utilisateur de la base de données indiqué dispose des permissions suffisantes pour l'éliminer. Soyez prudent avec cette option. Elle pourrait très bien vous amener à supprimer une base de données qui a réellement de la valeur !
Tous les paramètres de cette étape seront modifiables via l'interface d'administration de Chamilo, à l'exception de la Méthode de cryptage. Cette dernière est d'ailleurs pratiquement impossible à modifier après l'installation. Veillez à la sélectionner avec soin.
Illustration : Installation - Paramètres de configuration généraux
Identifiant et Mot de passe de l'administrateur: IMPORTANT ces informations permettront de se connecter en tant qu'administrateur dans Chamilo. Une solution est de mettre un compte administrateur générique, non nominatif et non personnel, mais cela supprimerait la possibilité d'identifier les activités d'un des administrateurs. Il est possible, après l'installation, de définir d'autres administrateurs distincts aux pouvoirs identiques.
Prénom et Nom de l'administrateur: seront affichés en bas à droite de votre Chamilo avec son adresse de courriel. Il est aussi possible d'ajouter une autre information, comme « Équipe de support technique ». Chacun fait à sa convenance.
Courriel de l'administrateur: l'adresse de contact de l'administrateur.
Langue principale: la langue qui sera utilisée par défaut sur votre portail Chamilo.
URL de Chamilo: l'adresse de votre portail Chamilo (si en local : http://localhost/chamilo; si distant : http://www.mondomaine.com/chamilo).
Nom du portail et Nom abrégé de l'organisation: ces informations seront visibles, dans certains styles graphiques, en haut à gauche du portail Chamilo et sur toutes les pages.
Méthode de cryptage: ce sont des fonctions cryptographiques qui permettent de sécuriser l'enregistrement des mots de passe des utilisateurs. Nous recommandons l’algorithme disponible le plus sûr : bcrypt. Cette valeur étant pratiquement impossible à modifier par la suite, veillez à la choisir avec soin.
Auto inscription: à mettre à Non ou Après approbation pour une installation non publique.
Auto inscription en tant que créateur de cours: à modifier en fonction des besoins.
Note : L'utilisateur défini à cette étape aura les droits d'administration de la plateforme. Certaines informations pourront être modifiées plus tard.
Ici, il faut vérifier les valeurs qui ont été introduites. Il est conseillé d'imprimer cette page pour conserver le mot de passe et les autres paramètres (dans un endroit sûr). Si une erreur est constatée, il est toujours possible de revenir en arrière. Si tout est correct, cliquez sur « Installer Chamilo».
Illustration : Installation - Récapitulatif
Une fois l'installation terminée, il suffit de se rendre sur le site en suivant le lien proposé et de se connecter avec l'identifiant défini précédemment.
Une fois Chamilo installé, un dernier message d'avertissement apparaît:
Illustration : Installation - Rapport d'installation
Il est possible de changer les droists d'accès au répertoire « app/config/ » en utilisant « chmod » :
Lorsque cette manipulation est faite, l'utilisation de Chamilo peut commencer en toute sécurité en cliquant sur « Aller directement sur votre nouveau portail » ou, par le navigateur, à l'adresse « localhost/chamilo » en local et « http://www.mondomaine.com/chamilo » à distance.
Pour une protection renforcée, vous pouvez également déplacer configuration.php en dehors du répertoire racine de Chamilo et l'inclure depuis app/config/configuration.php en y écrivant le contenu suivant (si vous avez déplacé le fichier 3 niveaux au-dessus):
En réalisant cette opération, vous éviterez (cas extrême) qu'un cracker mal intentionné accède trop facilement au fichier de configuration contenant les données d'accès à votre base de données. Il ne s'agit cependant pas d'une mesure absolue mais bien d'un incrément de sécurité.