GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Moodle su Ubuntu 20.04

Moodle è un sistema di gestione dell'apprendimento (LMS) gratuito e open source. È scritto nel linguaggio di programmazione PHP. Moodle è utilizzato da molte scuole, università e organizzazioni per una migliore esperienza di apprendimento.

Moodle fornisce gestione dei contenuti, interfaccia utente intuitiva, reportistica, quiz, feedback, elenchi delle presenze e altro ancora.

Questa guida spiega come configurare il tuo Moodle server da zero su Ubuntu 20.04 utilizzando il LEMP pila.

Installa LEMP Stack su Ubuntu

LEMP è una raccolta di software open source che comprende Linux, Nginx, MySQL/MariaDB e PHP. LEMP è essenzialmente un'alternativa allo stack LAMP con Nginx come server web invece di Apache.

Per Linux, in questa guida stiamo lavorando con Ubuntu 20.04. Assicurati di avere il tuo pronto per andare con un utente che ha capacità sudo.

Installa Nginx

Nginx è necessario per servire le risorse di apprendimento sul web. Se non disponi di un'istanza esistente del server web NGINX, segui i passaggi in questa altra guida per installare NGINX su Ubuntu 20.04. Dopo aver configurato correttamente NGINX con il tuo nome di dominio registrato, puoi tornare a questa guida e continuare con i passaggi successivi di seguito.

Installa MySQL/MariaDB

È necessario un database per archiviare i dati di moodle. Il database più comunemente usato per Moodle è in genere MySQL/MariaDB o Postgres.

La tabella del database Moodle include informazioni su utenti, corsi, informazioni sul sito e dati per l'analisi.

Installeremo MariaDB che è un sistema di gestione di database open source derivato da MySQL.

Esegui il comando seguente per installare MariaDB su Ubuntu:

$ sudo apt-get install mariadb-server mariadb-client

Il comando successivo eseguirà uno script integrato per la configurazione e la protezione dell'installazione di mariadb.

$ sudo mysql_secure_installation

È importante leggere attentamente le istruzioni. In primo luogo, ti verrà richiesto di inserire la password corrente per l'utente root mysql. Poiché si tratta di una nuova installazione, l'utente root mysql ha una password vuota. Quindi premi il tasto Invio per andare avanti.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

Il secondo passaggio consiste nell'impostare la password di root per mariadb. Inserisci y e quindi digita la password desiderata.

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!

Quindi, rimuovi gli utenti anonimi. Inserisci y per confermare.

Remove anonymous users? [Y/n] y
… Success!

Il passaggio successivo riguarda la disabilitazione dell'accesso root in remoto. Inserisci y per confermare.

Disallow root login remotely? [Y/n] y
… Success!

Inserisci y per confermare la rimozione del database di prova.

Remove test database and access to it? [Y/n] y
Dropping test database…
… Success!
Removing privileges on test database…
… Success! 

Il passaggio finale consiste nel ricaricare le tabelle dei privilegi in modo da rendere effettive le modifiche. Inserisci y per confermare.

Reload privilege tables now? [Y/n] y
… Success!
Cleaning up…
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

Ora puoi accedere a mariadb e creare un database per archiviare i dati di moodle. Esegui il comando seguente e inserisci la password di root di mariadb quando richiesto.

$ sudo mysql -u root -p

Una volta effettuato l'accesso, esegui il comando seguente per creare un database.

> CREATE DATABASE moodle;

Quindi, crea un account utente per Moodle in mariadb come segue. Ricordati di sostituire moodlesuper e password con i tuoi valori.

> CREATE USER 'moodlesuper'@'localhost' IDENTIFIED BY 'password';

Il comando successivo concede le autorizzazioni necessarie all'account utente appena creato.

> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodlesuper'@'localhost';

Esci da mariadb come segue.

> quit

Installa PHP

PHP è necessario per elaborare dinamicamente le richieste degli utenti per i contenuti di Moodle. NGINX funziona con PHP utilizzando PHP-FPM, ovvero FastCGI Process Manager.

Installa i componenti PHP richiesti eseguendo il comando seguente.

$ sudo apt-get install php-fpm php-mysql php-xml

Una volta installato, il passaggio successivo consiste nel configurare NGINX per inoltrare le richieste PHP a PHP-FPM. Per fare ciò, dovresti modificare il file di blocco del server NGINX per il tuo sito Web Moodle. Ad esempio, il comando seguente aprirà il file di blocco del server per il mio sito Web Moodle "cloudindevs.com".

$ sudo nano /etc/nginx/sites-available/cloudindevs

Nel file del blocco del server, aggiungi index.php alla riga che inizia con l'indice. Inoltre, copia la seguente direttiva di configurazione e incollala subito sotto la direttiva di posizione esistente nel file di blocco del server.

# pass PHP scripts to FastCGI server
location ~ [^/]\.php(/|$) {
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index            index.php;
    fastcgi_pass             unix:/var/run/php/php7.4-fpm.sock;
    include                  fastcgi_params;
    fastcgi_param   PATH_INFO       $fastcgi_path_info;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

Dopo le modifiche, quella parte del tuo file di blocco del server dovrebbe essere simile a quella che vedi nell'immagine qui sotto. Le nuove aggiunte sono contrassegnate in rosso.

Per testare la tua configurazione, esegui il comando seguente per creare un file index.php di esempio nella directory principale del tuo sito web moodle. Ricorda di sostituire "cloudindevs.com" con il tuo indirizzo web.

$ sudo nano /var/www/cloudindevs.com/index.php

Copia e incolla il codice PHP di esempio riportato di seguito nel file index.php.

<?php echo 'NGINX is working with PHP-FPM!'; ?>

Salva e chiudi il file index.php. Visita il tuositoweb.com/index.php in un browser web e dovresti vedere la pagina di esempio qui sotto.

Per avere SSL (https) segui Nginx con Let's Encrypt.

Installa Moodle su Ubuntu

Al momento della stesura di questa guida, l'ultima versione di Moodle è 3.10.1 e può essere scaricato come segue.

$ sudo wget https://download.moodle.org/download.php/direct/stable310/moodle-3.10.1.tgz

Quindi, estrai il contenuto del pacchetto scaricato e posizionalo nella directory principale del tuo sito Web Moodle. Ecco un esempio.

$ sudo tar -zxvf moodle-3.10.1.tgz -C /var/www/cloudindevs.com

È necessario modificare la proprietà e le autorizzazioni sulla cartella Moodle estratta come segue. L'account di servizio NGINX predefinito è www-data .

$ sudo chown -R www-data:www-data /var/www/cloudindevs.com/moodle
$ sudo chmod -R  755 /var/www/cloudindevs.com/moodle

Esegui i tre comandi successivi per creare una directory con le autorizzazioni appropriate affinché Moodle memorizzi i file e le cartelle caricati. La directory dei dati di Moodle non dovrebbe essere accessibile sul Web.

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

Configurazione Moodle

Ora è il momento di creare il file di configurazione principale di Moodle. Per fare ciò, cambia directory e quindi copia il file di configurazione di esempio nella cartella Moodle estratta eseguendo i comandi seguenti.

$ cd /var/www/cloudindevs.com/moodle
$ sudo cp config-dist.php config.php

Apri il file config.php per la modifica.

$ sudo nano config.php

Nella IMPOSTAZIONE DATABASE sezione del file config.php, procedi come segue.

  1. Sostituisci pgsql con mariadb
  2. Sostituisci moodle con il nome del database che hai creato durante la configurazione di mariadb
  3. Cambia nome utente al nome utente del database effettivo che hai creato in precedenza
  4. Cambia password alla password del tuo database

Premi il tasto freccia giù fino ad arrivare alla POSIZIONE DEL SITO WEB sezione del file config.php.

Sostituisci http://example.com/moodle con http://tuosito.com/moodle

Ad esempio, il mio sarebbe 'https://cloudindevs.com/moodle'

Scorri ulteriormente fino a POSIZIONE FILE DI DATI sezione del file config.php.

Modifica /home/example/moodledata nella directory dei dati di moodle che hai creato in precedenza. Il mio sarebbe /var/moodledata

Accedi all'interfaccia web di Moodle

A questo punto, puoi aprire un browser web e visitare yoursite.com/moodle per completare l'installazione.

Ecco cosa ottengo quando vado su 'www.cloudindevs.com/moodle' in un browser web.

Fai clic su Continua procedere. Nella pagina successiva, potresti riscontrare errori relativi ai plug-in mancanti. Vedi un esempio nell'immagine qui sotto.

Per risolvere i problemi, fai clic su deve essere installato e abilitato e segui le istruzioni per installare le estensioni richieste. Dopo aver installato le estensioni richieste, riavvia NGINX con sudo systemctl restart nginx e quindi ricaricare la pagina Controlli server per confermare se gli errori sono spariti.

Se gli errori sono scomparsi, puoi fare clic su Continua per procedere.

Configura l'account amministratore principale di Moodle

Dopo aver installato correttamente Moodle, ti verrà presentata una pagina per configurare il tuo account amministratore principale. Dovresti specificare un nome utente, una password e altre informazioni richieste.

Inoltre, ti verrà chiesto di configurare il nome del tuo sito, il riepilogo della prima pagina, le impostazioni della posizione, ecc. Quando hai finito, fai clic su Salva modifiche in fondo alla pagina.

E questo conclude l'installazione di Moodle. Ecco come appare il mio nuovo sito web Moodle.

Conclusione

L'apprendimento online ha guadagnato molta attenzione da quando è iniziata la pandemia di Covid-19, e questo è un dato di fatto. Molte istituzioni educative stanno creando piattaforme di e-learning attraverso sistemi di gestione dell'apprendimento online come Moodle.

In questa guida, abbiamo installato e configurato con successo un server Moodle da zero su Ubuntu 20.04. Per ulteriori informazioni su come utilizzare e gestire il tuo sito Web Moodle, consulta i documenti Moodle ufficiali.


Ubuntu
  1. Come installare MySQL su Ubuntu 20.04

  2. Come installare Moodle su Ubuntu 16.04

  3. Come installare MySQL su Ubuntu 18.04

  4. Come installare Shopware CE su Ubuntu 18.04

  5. Come installare MySQL su Ubuntu 22.04

Come installare Moodle su Ubuntu 14.04

Come installare Moodle su Ubuntu 15.04

Come installare Moodle su Ubuntu 16.04 LTS

Come installare Go in Ubuntu 20.04

Come installare Vai su Ubuntu 22.04

Come installare MySQL 8.0 su Ubuntu 18.04