Moodle è il sistema di gestione dell’apprendimento più popolare al mondo per la creazione di solidi siti di apprendimento online. È dotato di una gamma di attività e strumenti educativi tra cui è possibile scegliere, supporta la gestione delle valutazioni e viene fornito con certificati personalizzati. Consente inoltre la comunicazione con i tuoi studenti in tempo reale con un potente strumento di videoconferenza. Inoltre, è predisposto per dispositivi mobili, così i tuoi studenti possono imparare dai loro dispositivi mobili.

Requisiti del server Moodle

  • Sistema operativo: un’installazione minima del server CentOS 8 o RHEL 8 con lo stack LEMP installato.
  • Spazio sul disco: 200 MB per Moodle e 5 GB sono probabilmente un minimo realistico di archiviazione dei contenuti.
  • Processore: Consigliato 1 GHz (min), 2 GHz dual-core o superiore.
  • Memoria: 512 MB (min), 1 GB o più consigliato. 8 GB plus sono probabilmente su un server di produzione di grandi dimensioni.

Creazione di un record DNS di dominio per il sito Web Moodle

1. Inizia creando un sottodominio che gli utenti utilizzeranno per accedere a Moodle sito di apprendimento online. Ad esempio, se il tuo nome di dominio è testprojects.me, puoi creare un sottodominio chiamato learning.testprojects.me.

Apri il tuo nome di dominio avanzato DNS impostazioni e aggiungi un file A registrare come mostrato nell’immagine seguente.

Aggiungi un record per il dominio Moodle
Aggiungi un record per il dominio Moodle

Installazione di Moodle in CentOS 8 Server

2. Prima dell’installazione Moodle, assicurati di avere le estensioni PHP richieste sul tuo server, puoi eseguire il seguente comando per installarle:

# 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. Quindi, crea un database per Moodle applicazione come segue.

# mysql -u root -p

Quindi creare il database, l’utente del database e creare una password sicura per l’uso.

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. Ora scarica l’ultima versione di Moodle (3.9 al momento della scrittura) dal sito web ufficiale del progetto moodle, estrai il file di archivio e spostalo nella tua webroot (/var/www/html/), quindi impostare le autorizzazioni e la proprietà appropriate per consentire al server web di accedere alla directory di Moodle, come segue.

# 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. Quindi, crea il file moodledata directory che è la posizione dei file che vengono caricati o creati da Moodle interfaccia, quindi assegnare le autorizzazioni e la proprietà appropriate per consentire al server Web l’accesso in lettura e scrittura ad esso:

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

6. Quindi, passa al file Moodle directory di installazione e creare un file config.php file dal campione config.dist.php fornito, quindi aprilo per la modifica per configurare alcune impostazioni chiave per il tuo Moodle piattaforma, come i parametri di connessione del database e la posizione del sito e dove può trovare la directory moodledata:

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

Impostare il tipo di base dati corretto, l’host del database corretto, il nome del database e l’utente del database e la password dell’utente.

$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. Imposta anche l’URL utilizzato per accedere al tuo Moodle sit, questo specifica la posizione del file wwwroot dove si trovano i tuoi file web Moodle e anche il file dataroot (la directory moodledata):

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

Configurazione di NGINX per servire il sito Web Moodle

8. In questa sezione è necessario configurare NGINX per servire il tuo Moodle applicazione. È necessario creare un blocco server per esso nella configurazione di NGINX come mostrato.

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

Copiare e incollare la seguente configurazione nel file di configurazione del blocco del server. Sostituisci il nome del server con il vostro nome del sottodominio creato sopra e il fastcgi_pass dovrebbe puntare a php-fpm (nota che su CentOS 8, PHP-FPM accetta FastCGI richieste utilizzando l’indirizzo definito in /etc/nginx/conf.d/php-fpm.conf configurazione).

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;
}
}

Salva il file e chiudilo.

9. Quindi controlla il file NGINX configurazione per correttezza, se lo è Ok, riavvia il file nginx e php-fpm servizi per applicare le modifiche recenti:

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

10. Se hai SELinux abilitato sul sistema, quindi eseguire i seguenti comandi per impostare il contesto corretto per accedere al file Moodle file web sul server:

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

11. Inoltre, assicurati che il file HTTP e HTTPS i servizi sono aperti nel firewall per consentire il traffico a NGINX server web:

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

Completa l’installazione di Moodle tramite Web Installer

12. Per accedere al file Moodle programma di installazione Web, aprire il browser Web e navigare utilizzando il sottodominio hai creato sopra:

http://learning.testprojects.me

Una volta caricata la pagina di benvenuto, leggere i termini e le condizioni e fare clic su Continua.

Programma di installazione Web Moodle
Programma di installazione Web Moodle

13. Successivamente, il programma di installazione Web verificherà se il sistema soddisfa i requisiti per l’esecuzione di un file Moodle sito della versione specificata. Puoi scorrere verso il basso per visualizzare ulteriori informazioni.

Verifica dei requisiti del server Moodle
Verifica dei requisiti del server Moodle

14. L’installatore si lamenterà HTTPS non essendo abilitato, ignora l’errore per ora (nella sezione successiva, mostreremo come abilitare HTTPS su Moodle) e fai clic su Continua, per avviare l’effettiva installazione dei file web.

Errore HTTPS di Moodle
Errore HTTPS di Moodle

15. Ora il programma di installazione avvierà l’installazione vera e propria del file Moodle file come mostrato nello screenshot seguente. Al termine, fare clic su Continua.

Installazione di Moodle
Installazione di Moodle

16. Nel passaggio successivo, devi aggiornare il tuo Moodle account amministratore del sito aggiornando nome utente, password, nome e cognome e indirizzo e-mail. Quindi scorrere la pagina verso il basso e fare clic Aggiorna il profilo.

Dettagli del sito Moodle
Dettagli del sito Moodle

17. Quindi aggiorna le impostazioni della prima pagina del sito Moodle. Quindi scorri verso il basso e fai clic Aggiornare per iniziare a utilizzare il tuo sito Moodle.

Impostazioni della pagina iniziale di Moodle
Impostazioni della pagina iniziale di Moodle

18. Successivamente, devi registrare il tuo sito seguendo le istruzioni sullo schermo. Puoi andare alla dashboard facendo clic su Dashboard.

Installazione Web di Moodle completata
Installazione Web di Moodle completata

Configurazione di HTTPS sul sito Moodle utilizzando Let’s Encrypt

HTTPS aggiunge il primo livello di sicurezza al tuo sito per consentire comunicazioni protette tra i tuoi utenti e il Moodle applicazione (in particolare il NGINX web server che riceve le richieste e fornisce le risposte).

È possibile acquistare un certificato SSL / TLS da una CA commerciale o utilizzare Let’s Encrypt che è gratuito e riconosciuto da tutti i browser web moderni. Per questa guida, useremo Let’s Encrypt.

19. Il Let’s Encrypt La distribuzione del certificato viene gestita automaticamente utilizzando il certbot attrezzo. Puoi installare certbot e altri pacchetti richiesti con il seguente comando:

# dnf install certbot python3-certbot-nginx

20. Quindi esegui il seguente comando per ottenere un file Let’s Encrypt certificato e chiedi a Certbot di modificare il tuo NGINX configurazione automaticamente per servirlo (configurerà anche HTTP per essere reindirizzato automaticamente a HTTPS).

# certbot --nginx
Abilita HTTPS su Moodle
Abilita HTTPS su Moodle

21. Quindi eseguire il comando seguente per abilitare il rinnovo automatico del file Crittografiamo SSL / TLS certificato:

# 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. Successivamente, aggiorna la configurazione di Moodle per iniziare a utilizzare HTTPS.

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

cambiare il wwwroot URL da HTTP per HTTPS:

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

23. Ultimo ma non meno importante, conferma che il tuo Moodle il sito è ora in esecuzione HTTPS.

Sito Moodle in esecuzione su HTTPS
Sito Moodle in esecuzione su HTTPS

Per ora è tutto! Per ulteriori informazioni e opzioni di configurazione per eseguire la tua nuova piattaforma di apprendimento, vai al sito Web di Moodle e leggi la documentazione ufficiale.

Esegui l'accesso per Commentare