Moodle è un sistema di gestione dei corsi (CMS) open source, noto anche come sistema di gestione dell'apprendimento (LMS) o ambiente di apprendimento virtuale (VLE). È diventato molto popolare tra gli educatori di tutto il mondo come strumento per la creazione di siti Web dinamici online per i loro studenti.
Moodle offre funzionalità per includere l'invio di compiti, quiz online, wiki, valutazione, messaggi istantanei, forum di discussione e altro. Ma poiché è un software modulare, può essere esteso tramite plug-in per aggiungere funzionalità extra.
Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire le relative query di installazione di software open source.
In questo contesto, esamineremo come installare Moodle su Ubuntu 20.04 LTS.
Passaggi per installare Moodle su Ubuntu 20.04 LTS Focal Fossa?
1. Esegui l'aggiornamento del sistema
Innanzitutto, assicurati che tutti i pacchetti di sistema siano aggiornati eseguendo i seguenti comandi apt nel terminale:
$ sudo apt update
$ sudo apt upgrade
2. Installa il server LEMP
È richiesto un server LEMP Ubuntu 20.04. Se non hai installato lo stack LEMP, puoi seguire la nostra guida qui.
3. Installa Moodle sul tuo sistema
Usa i comandi seguenti per scaricare l'ultima versione di Moodle:
$ 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/
Successivamente, dovremo modificare i permessi di alcune cartelle con i comandi seguenti:
$ sudo chown www-data:www-data -R /var/www/html/moodle
$ sudo chmod 775 -R /var/www/html/moodle
Infine, crea la directory dei dati di Moodle, un luogo in cui Moodle può salvare i file caricati e impostarne i permessi:
$ sudo mkdir -p /var/moodledata
$ sudo chmod 775 -R /var/moodledata
$ sudo chown www-data:www-data -R /var/moodledata
4. Configura MariaDB per Moodle
Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando lo script mysql_secure_installation. dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB:
$ mysql_secure_installation
Configuralo in questo modo:
- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y
Successivamente, dovremo accedere alla console MariaDB e creare un database per Moodle. Esegui il seguente comando:
$ mysql -u root -p
Questo ti chiederà una password, quindi inserisci la tua password di root MariaDB e premi Invio. Una volta effettuato l'accesso al server del database, è necessario creare un database per l'installazione di Moodle:
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 'your-strong-passwd';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;
5. Configura Moodle
Ora creiamo il file di configurazione principale di Moodle dal file di configurazione di esempio fornito con il pacchetto:
$ cd /var/www/html/moodle/
$ sudo cp config-dist.php config.php
$ sudo nano config.php
Cerca la sezione di configurazione del database, quindi configura il database in cui verranno archiviati tutti i dati Moodle:
$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 = 'Secur3P@zzwd'; // your database password
$CFG->prefix = 'mdl_'; // prefix to use for all table names
Inoltre, configura la posizione del sito Web di Moodle e la posizione della directory dei dati di Moodle:
$CFG->wwwroot = 'http://learning.linuxapt.com';
$CFG->dataroot = '/var/moodledata'; as shown.
6. Configura il server Web Nginx
Ora creiamo una nuova direttiva host virtuale in Nginx, vai alla directory /etc/nginx/conf.d/:
$ sudo nano /etc/nginx/conf.d/moodle.conf
server{
listen 80;
server_name learning.linuxapt.com;
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;
}
}
Ora possiamo riavviare il server web Nginx in modo che le modifiche avvengano:
$ nginx-t
$ sudo systemctl restart nginx
7. Accedi all'interfaccia web di Moodle
Moodle sarà disponibile sulla porta HTTP 80 per impostazione predefinita. Apri il tuo browser preferito e vai a http://learning.linuxapt.com o https://indirizzo-ip-server e completa i passaggi richiesti per completare l'installazione.