Moodle è la piattaforma di gestione per l’apprendimento online (e-learning) più popolare, robusta, gratuita e open source al mondo creata per il Web e i dispositivi mobili. Offre una vasta gamma di attività e strumenti educativi che consentono a scuole, università e istituzioni correlate di offrire agli studenti una piattaforma di apprendimento flessibile sempre e ovunque, senza interruzioni del corso e del curriculum.

Alcune delle sue caratteristiche generali includono un’interfaccia moderna e facile da usare, dashboard personalizzato, strumenti e attività di collaborazione, calendario all-in-one, comoda gestione dei file, editor di testo semplice e intuitivo, notifiche e monitoraggio dei progressi.

È importante sottolineare che Moodle è anche altamente estensibile utilizzando oltre un migliaio di plugin che supportano attività, blocchi, temi e molto altro ancora.

In questo articolo imparerai come installare l’ultima versione di Piattaforma di apprendimento Moodle con NGINX e database MySQL / MariaDB su Ubuntu 20.04 e versioni precedenti.

Requisiti del server:

Dopo aver installato il file LEMP impilare sul file Ubuntu server, puoi procedere ulteriormente alla configurazione Moodle sul server come spiegato di seguito.

Configurazione del record DNS per l’applicazione Moodle

1. Per consentire agli utenti di accedere al tuo Moodle istanza è necessario creare un file sottodominio per questo, quindi, è necessario creare un DNS A record per raggiungere questo obiettivo. Per questa guida, il nostro dominio di prova è testprojects.me, quindi dobbiamo creare un sottodominio, ad esempio, learning.testprojects.me.

Quindi, accedi alla console web del tuo registrar di dominio e accedi alle impostazioni avanzate del tuo dominio, fai clic su Aggiungi nuovo record di tipo A, dovrebbe essere un host learning (o qualsiasi parola di tua scelta) e il valore dovrebbe essere l’indirizzo IP pubblico del tuo server Ubuntu.

Crea record DNS A per l'applicazione Moodle
Crea record DNS A per l’applicazione Moodle

Installazione di Moodle in Ubuntu Server

2. Successivamente, è necessario installare PHP estensioni e librerie richieste da Moodle utilizzando il gestore di pacchetti apt come mostrato.

$ sudo apt update
$ sudo apt 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. Quindi, crea un database per il tuo Moodle sistema. Accedi a MySQL shell di amministrazione del database e creare il database come mostrato:

$ sudo mysql

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

4. Come accennato in precedenza, per questa guida, scaricheremo e installeremo l’ultima versione Moodle (versione 3.9 al momento della scrittura). Esegui il seguente comando wget per prendere il pacchetto Moodle e usa il comando tar per estrarlo rispettivamente. Quindi usa il comando ls per confermare che la directory moodle esiste sotto / var / www / html / come mostrato.

$ wget -c https://download.moodle.org/download.php/direct/stable39/moodle-latest-39.tgz
$ sudo tar -zvxf moodle-latest-39.tgz -C /var/www/html/
$ ls /var/www/html/

5. Quindi, imposta le autorizzazioni appropriate per il file Moodle directory eseguendo i seguenti comandi.

$ sudo chown www-data:www-data -R /var/www/html/moodle
$ sudo chmod 775 -R /var/www/html/moodle

6. Quindi, crea il file Moodle dati directory, un luogo dove Moodle può salvare i file caricati e impostare i suoi permessi come mostrato.

$ sudo mkdir -p /var/moodledata
$ sudo chmod 775 -R /var/moodledata
$ sudo chown www-data:www-data -R  /var/moodledata

7. Quindi crea il file Moodle file di configurazione principale dal file di configurazione di esempio fornito con il pacchetto, aprirlo.

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

Lok per la sezione di configurazione del database, quindi configura il database dove tutto Moodle i dati verranno archiviati, come mostrato nella seguente schermata:

$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="moodle";     // database name, eg moodle
$CFG->dbuser="moodleadmin";   // your database username
$CFG->dbpass="[email protected]";   // your database password
$CFG->prefix    = 'mdl_';       // prefix to use for all table names
Configura le impostazioni del database Moodle
Configura le impostazioni del database Moodle

Inoltre, configura la posizione del sito Web Moodle e la posizione della directory dei dati di Moodle come mostrato.

$CFG->wwwroot="http://learning.testprojects.me";
$CFG->dataroot="/var/moodledata";
Configura il sito web di Moodle
Configura il sito web di Moodle

Salva e chiudi il file. Quindi configura NGINX per server il tuo Moodle sito come descritto nella sezione successiva.

Configurazione di NGINX per servire l’applicazione Moodle

8. Affinché NGINX server il tuo file Moodle site, è necessario creare una nuova configurazione di blocco del server sotto NGINX configurazione, nella directory /etc/nginx/conf.d/.

$ sudo vim /etc/nginx/conf.d/moodle.conf

Copia e incolla la seguente configurazione al suo interno, sostituisci learning.testprojects.me con il tuo sottodominio. Oltre al fastcgi_pass dovrebbe puntare all’indirizzo su cui PHP-FPM accetta le richieste FastCGI (controllare il file /etc/php/7.4/fpm/pool.d/www.conf file per ulteriori informazioni).

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           unix:/run/php/php7.4-fpm.sock;
        include                 /etc/nginx/mime.types;
        include                 fastcgi_params;
        fastcgi_param           PATH_INFO       $fastcgi_path_info;
        fastcgi_param           SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Salva il file e chiudilo.

9. Quindi, verifica che il file NGINX la configurazione è corretta dopo aver apportato le modifiche precedenti, quindi riavviare normalmente il servizio NGINX.

$ sudo nginx -t
$ sudo systemctl reload nginx
Controlla la configurazione di Nginx
Controlla la configurazione di Nginx

Completamento dell’installazione di Moodle tramite Web Installer

10. Ora apri un browser web e naviga utilizzando il tuo sottodominio, ad esempio, learning.testprojects.me per accedere a Moodle programma di installazione web.

http://learning.testprojects.me

Una volta caricata la pagina di benvenuto, leggere il messaggio e fare clic su Continua.

Programma di installazione Web Moodle
Programma di installazione Web Moodle

11. Successivamente, il programma di installazione verificherà se il sistema soddisfa i requisiti, se tutto è a posto, scorrere verso il basso e fare clic Continua per avviare l’effettiva installazione dei file e l’impostazione dello schema del database.

Nota che il programma di installazione mostrerà un avviso sul sito non in esecuzione HTTPS, ignora l’avviso per ora. Nell’ultima sezione, vedremo come abilitare HTTPS sopra Moodle utilizzando gratuitamente Let’s Encrypt certificati.

Verifica dei requisiti di sistema di Moodle
Verifica dei requisiti di sistema di Moodle

Una volta completata l’installazione, fare clic su Continua.

Installazione Web di Moodle completata
Installazione Web di Moodle completata

12. Successivamente, configura l’account amministratore del tuo sito Moodle creando nome utente, password, nome e cognome e indirizzo email dell’account. Quindi scorri verso il basso e fai clic Aggiorna account.

Crea un account amministratore Moodle
Crea un account amministratore Moodle

13. Quindi, configura il file Moodle impostazioni della prima pagina del sito come mostrato nello screenshot seguente. Quindi scorri verso il basso e fai clic Aggiornare.

Configura la prima pagina di Moodle
Configura la prima pagina di Moodle

14. Il programma di installazione web ti accederà automaticamente al nuovo Moodle posto. È possibile completare la registrazione al sito seguendo le istruzioni sullo schermo.

Registrazione al sito Moodle
Registrazione al sito Moodle

Configurazione di HTTPS su un’applicazione Moodle utilizzando Let’s Encrypt

15. Per proteggere il tuo Moodle site, è necessario abilitare HTTPS. Per questa guida, useremo Let’s Encrypt certificati SSL / TLS gratuiti e affidabili. Un altro vantaggio dell’utilizzo di Let’s Encrypt è che è automatizzato.

Quindi, torna al tuo terminale ed esegui il seguente comando per installare il file certbot su Ubuntu (uno strumento gratuito e open source per l’utilizzo automatico dei certificati Let’s Encrypt per abilitare HTTPS su siti amministrati manualmente).

$ sudo snap install --classic certbot
Installa Certbot su Ubuntu
Installa Certbot su Ubuntu

16. Quindi emettere il seguente comando per ottenere un certificato e avere Certbot modifica il tuo NGINX configurazione per configurare automaticamente il nuovo certificato.

$ sudo certbot --nginx
Installa il certificato SSL su Moodle
Installa il certificato SSL su Moodle

17. Quindi, torna al file Moodle file di configurazione del sito.

$ sudo vim /var/www/html/moodle/config.php 

e cambia l’URL da HTTP per HTTPS come mostrato nello screenshot seguente.

$CFG->wwwroot="https://learning.testprojects.me";
Imposta HTTPS sulla configurazione di Moodle
Imposta HTTPS sulla configurazione di Moodle

18. Infine, verifica dal browser che il tuo Moodle il sito è ora in esecuzione HTTPS.

https://learning.testprojects.me
Verifica HTTPS su Moodle
Verifica HTTPS su Moodle

È tutto per ora! Vai alla documentazione di Moodle 3.9 per ulteriori informazioni, opzioni di configurazione e guida all’uso.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *