Moodle est le système de gestion de l’apprentissage le plus populaire au monde pour la création de sites d’apprentissage en ligne robustes. Il propose une gamme d’activités et d’outils pédagogiques parmi lesquels vous pouvez choisir, il prend en charge la gestion des évaluations et est livré avec des certificats personnalisés. Il permet également de communiquer avec vos étudiants en temps réel avec un puissant outil de vidéoconférence. De plus, il est prêt pour les appareils mobiles, afin que vos élèves puissent apprendre à partir de leurs appareils mobiles.

Configuration requise pour le serveur Moodle

  • Système opérateur: une installation minimale de CentOS 8 ou RHEL 8 serveur avec Pile LEMP installée.
  • Espace disque: 200 Mo pour le Moodle, et 5 Go est probablement un minimum réaliste de stockage de contenu.
  • Processeur: 1 GHz (min), 2 GHz dual-core ou plus recommandé.
  • Mémoire: 512 Mo (min), 1 Go ou plus sont recommandés. 8 Go plus est probablement sur un grand serveur de production.

Création d’un enregistrement DNS de domaine pour le site Web Moodle

1. Commencez par créer un sous-domaine que les utilisateurs utiliseront pour accéder au Moodle site d’apprentissage en ligne. Par exemple, si votre nom de domaine est testprojects.me, vous pouvez créer un sous-domaine appelé learning.testprojects.me.

Ouvrez avancé de votre nom de domaine DNS paramètres et ajoutez un A enregistrer comme indiqué dans l’image suivante.

Ajouter un enregistrement pour le domaine Moodle
Ajouter un enregistrement pour le domaine Moodle

Installation de Moodle sur le serveur CentOS 8

2. Avant d’installer Moodle, assurez-vous que vous disposez des extensions PHP requises sur votre serveur, vous pouvez exécuter la commande suivante pour les installer:

# dnf install php-common php-iconv php-curl php-mbstring php-xmlrpc php-soap php-zip php-gd php-xml php-intl php-json libpcre3 libpcre3-dev graphviz aspell ghostscript clamav

3. Ensuite, créez une base de données pour le Moodle application comme suit.

# mysql -u root -p

Créez ensuite la base de données, l’utilisateur de la base de données et créez un mot de passe sécurisé pour l’utilisation.

MariaDB [(none)]> CREATE DATABASE moodledb;
MariaDB [(none)]> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodledb.* TO 'moodleadmin'@'localhost' IDENTIFIED BY '[email protected]';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit

4. Téléchargez maintenant la dernière version de Moodle (3,9 au moment de la rédaction) du site officiel du projet moodle, extrayez le fichier d’archive et déplacez-le dans votre racine Web (/var/www/html/), puis définissez les autorisations et la propriété appropriées pour permettre au serveur Web d’accéder au répertoire Moodle, comme suit.

# wget -c https://download.moodle.org/download.php/direct/stable39/moodle-latest-39.tgz
# tar -xzvf  moodle-latest-39.tgz
# mv moodle /var/www/html/
# chmod 775 -R /var/www/html/moodle
# chown nginx:nginx -R /var/www/html/moodle

5. Ensuite, créez le moodledata répertoire qui est l’emplacement des fichiers téléchargés ou créés par le Moodle interface, puis attribuez les autorisations et la propriété appropriées pour permettre au serveur Web d’y accéder en lecture et en écriture:

# mkdir -p /var/www/html/moodledata
# chmod 770 -R /var/www/html/moodledata
# chown :nginx -R /var/www/html/moodledata

6. Ensuite, passez au Moodle répertoire d’installation et créez un config.php fichier de l’exemple config.dist.php fichier fourni, puis ouvrez-le pour le modifier afin de configurer certains paramètres clés pour votre Moodle plate-forme, tels que les paramètres de connexion à la base de données et l’emplacement du site et où il peut trouver le répertoire moodledata:

# cd /var/www/html/moodle/
# cp config-dist.php config.php
# vim config.php

Définissez le type de base de données correct, l’hôte de base de données correct, le nom de la base de données, l’utilisateur de la base de données et le mot de passe de l’utilisateur.

$CFG->dbtype="mariadb";      // 'pgsql', 'mariadb', 'mysqli', 'sqlsrv' or 'oci'
$CFG->dblibrary = 'native';     // 'native' only at the moment
$CFG->dbhost="localhost";  // eg 'localhost' or 'db.isp.com' or IP
$CFG->dbname="moodledb";     // database name, eg moodle
$CFG->dbuser="moodleadmin";   // your database username
$CFG->dbpass="[email protected]zzwd0L2";   // your database password
$CFG->prefix    = 'mdl_';       // prefix to use for all table names

7. Définissez également l’URL utilisée pour accéder à votre Moodle assis, cela spécifie l’emplacement du wwwroot où se trouvent vos fichiers Web Moodle, ainsi que dataroot (le répertoire moodledata):

$CFG->wwwroot="http://learning.testprojects.me";
$CFG->dataroot="/var/www/html/moodledata";

Configurer NGINX pour servir le site Web Moodle

8. Dans cette section, vous devez configurer NGINX pour servir votre Moodle application. Vous devez créer un bloc serveur pour celui-ci dans la configuration NGINX comme indiqué.

# vim /etc/nginx/conf.d/moodle.conf

Copiez et collez la configuration suivante dans le fichier de configuration du bloc serveur. Remplace le nom du serveur avec votre nom de sous-domaine créé ci-dessus, et le fastcgi_pass devrait pointer vers php-fpm (notez que sur CentOS 8, PHP-FPM accepte FastCGI demandes utilisant l’adresse définie dans le /etc/nginx/conf.d/php-fpm.conf configuration).

server{
   listen 80;
    server_name learning.testprojects.me;
    root        /var/www/html/moodle;
    index       index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ ^(.+.php)(.*)$ {
        fastcgi_split_path_info ^(.+.php)(.*)$;
        fastcgi_index           index.php;
        fastcgi_pass            php-fpm;
        include                 /etc/nginx/mime.types;
        include                 fastcgi_params;
        fastcgi_param           PATH_INFO       $fastcgi_path_info;
        fastcgi_param           SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Enregistrez le fichier et fermez-le.

9. Vérifiez ensuite le NGINX configuration pour l’exactitude, si c’est D’accord, redémarrez le nginx et php-fpm services pour appliquer les modifications récentes:

# nginx -t
# systemctl restart nginx
# systemctl restart php-fpm

dix. Si tu as SELinux activé sur votre système, puis exécutez les commandes suivantes pour définir le contexte approprié pour accéder au Moodle fichiers Web sur le serveur:

# setsebool -P httpd_can_network_connect on
# chcon -R --type httpd_sys_rw_content_t /var/www/html

11. En outre, assurez-vous que le HTTP et HTTPS les services sont ouverts dans le pare-feu pour autoriser le trafic vers le NGINX serveur Web:

# firewall-cmd --permanent --zone=public --add-service=http 
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload

Installation complète de Moodle via Web Installer

12. Pour accéder au Moodle programme d’installation Web, ouvrez votre navigateur Web et naviguez à l’aide du sous-domaine vous avez créé ci-dessus:

http://learning.testprojects.me

Une fois la page d’accueil chargée, lisez les termes et conditions et cliquez sur Continuer.

Programme d'installation Web Moodle
Programme d’installation Web Moodle

13. Ensuite, le programme d’installation Web vérifiera si votre système répond aux exigences pour exécuter un Moodle site de la version spécifiée. Vous pouvez faire défiler vers le bas pour afficher plus d’informations.

Vérification des exigences du serveur Moodle
Vérification des exigences du serveur Moodle

14. L’installateur se plaindra de HTTPS n’étant pas activé, ignorez cette erreur pour le moment (dans la section suivante, nous montrerons comment activer HTTPS sur Moodle), et cliquez sur Continuer, pour démarrer l’installation proprement dite des fichiers Web.

Erreur Moodle HTTPS
Erreur Moodle HTTPS

15. Maintenant, le programme d’installation commencera l’installation proprement dite du Moodle fichiers comme indiqué dans la capture d’écran suivante. Une fois terminé, cliquez sur Continuer.

Installation de Moodle
Installation de Moodle

16. À l’étape suivante, vous devez mettre à jour votre Moodle compte administrateur du site en mettant à jour le nom d’utilisateur, le mot de passe, le prénom, le nom et l’adresse e-mail. Faites ensuite défiler la page et cliquez sur Mettre à jour le profil.

Détails du site Moodle
Détails du site Moodle

17. Ensuite, mettez à jour les paramètres de la page d’accueil du site Moodle. Puis faites défiler vers le bas et cliquez sur Mettre à jour pour commencer à utiliser votre site Moodle.

Paramètres de la page d'accueil Moodle
Paramètres de la page d’accueil Moodle

18. Ensuite, vous devez enregistrer votre site en suivant les instructions à l’écran. Vous pouvez accéder au tableau de bord en cliquant sur le tableau de bord.

Installation Web de Moodle terminée
Installation Web de Moodle terminée

Configurer HTTPS sur le site Moodle à l’aide de Let’s Encrypt

HTTPS ajoute la première couche de sécurité à votre site pour permettre des communications sécurisées entre vos utilisateurs et le Moodle application (en particulier le NGINX serveur Web qui reçoit les demandes et fournit des réponses).

Vous pouvez acheter un certificat SSL / TLS auprès d’une autorité de certification commerciale ou utiliser Crypterons qui est gratuit et reconnu par tous les navigateurs Web modernes. Pour ce guide, nous utiliserons Crypterons.

19. le Crypterons Le déploiement du certificat est géré automatiquement à l’aide de certbot outil. Vous pouvez installer certbot et autres packages requis avec la commande suivante:

# dnf install certbot python3-certbot-nginx

20. Exécutez ensuite la commande suivante pour obtenir un Crypterons certificat et demandez à Certbot de modifier votre NGINX configuration automatiquement pour le servir (il configurera également HTTP être redirigé automatiquement vers HTTPS).

# certbot --nginx
Activer HTTPS sur Moodle
Activer HTTPS sur Moodle

21. Exécutez ensuite la commande suivante pour activer le renouvellement automatique du Cryptons SSL / TLS certificat:

# echo "0 0,12 * * * root python3 -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew -q" | sudo tee -a /etc/crontab > /dev/null

22. Ensuite, mettez à jour votre configuration Moodle pour commencer à utiliser HTTPS.

# vim /var/www/html/moodle/config.php

changer la wwwroot URL de HTTP à HTTPS:

$CFG->wwwroot="https://learning.testprojects.me";

23. Dernier point mais non le moindre, confirmez que votre Moodle le site fonctionne maintenant sur HTTPS.

Site Moodle fonctionnant sur HTTPS
Site Moodle fonctionnant sur HTTPS

C’est tout pour le moment! Pour plus d’informations et les options de configuration pour exécuter votre nouvelle plate-forme d’apprentissage, accédez au site Web de Moodle et lisez le documentation officielle.

.

Leave a Reply