Installazione Moodle · 5 min read · Nov 07, 2025

Come installare Moodle su ISPConfig

Moodle è una piattaforma di apprendimento progettata per fornire a educatori, amministratori e studenti un sistema robusto, sicuro e integrato per creare ambienti di apprendimento personalizzati.

Viene utilizzato in molti ambienti, partendo dall’istruzione, e-learning fino ai test di certificazione.

Lo utilizzerò personalmente ogni giorno per insegnare ai miei studenti in un corso di sistemi operativi e sia gli insegnanti che gli studenti lo adorano.

In questo tutorial, impareremo come installarlo come sito web all’interno di ISPConfig, anche con certificato SSL da Let’s Encrypt.

Il tutorial è basato su Debian 8, ma dovrebbe funzionare bene anche con Ubuntu e altre distribuzioni supportate da ISPConfig.

Quindi, quali sono i prerequisiti prima di iniziare

1. Configurare il DNS

Nel nostro esempio, abbiamo detto che utilizzeremo il dominio course.servisys.it, quindi quando andremo ad aprire il nostro sito Moodle utilizzeremo https://course.servisys.it, quindi per configurare il DNS. Vai alla scheda DNS in ISPConfig e modifica il tuo DNS in modo che assomigli a qualcosa come l’immagine qui sotto:

Attenzione a selezionare un tipo di record A. Questo è un passaggio molto importante, perché il record A è utilizzato da Let’s Encrypt per generare il certificato SSL.

Se gestisci il tuo DNS presso un fornitore esterno, dovrai creare lo stesso tipo di record lì.

2. Creare il sito web

Ora vai sulla scheda Sito in ISPConfig e crea un nuovo sito, chiamato come la configurazione DNS precedente, modificando le seguenti opzioni:

Sottodominio automatico: nel mio caso ho cambiato da www. a nessuno perché il mio dominio è course.servisys.it. Se lo imposti su www, l’automazione di Let’s Encrypt cercherà di generare un certificato per www.course.servisys.it e fallirà. Quindi fai attenzione a questa opzione.

SSL: Abilita per SSL.

Let’s Encrypt: sì, vogliamo generare un certificato con questo.

PHP: Fastcgi funziona bene per me.

Ora fai clic su salva e aspetta, che il certificato venga emesso correttamente.

Aspetta qualche minuto e prova ad aprire il tuo sito web, nel mio caso https://course.servisys.it, se tutto va bene vedrai la barra verde!

3. Creazione del database

Creiamo un Utente Database e un Database da utilizzare con Moodle.

Vai alla scheda siti, quindi a Utenti Database > nuovo utente.

Seleziona il cliente associato, scegli un nome e una password, qualcosa del genere:

Prendi nota di:

  • Utente Database
  • Password

Torna alla scheda Siti, e ora scegli Database, quindi Aggiungi Nuovo Database, seleziona il tuo sito (courses.serverisy.it), scegli un nome per il Database e seleziona l’utente precedentemente creato, e fai clic su salva. Qualcosa come lo screenshot qui sotto:

4. Modificare la configurazione di MySql

La configurazione predefinita di mysql necessita di alcune piccole modifiche per funzionare con Moodle. Devi modificare il file:

nano /etc/mysql/my.cnf

e all’inizio, aggiungi la riga rossa

[client]  
port = 3306  
socket = /var/run/mysqld/mysqld.sock  
default-character-set = utf8mb4

sempre nello stesso file, scendi un po’ più in basso, prima che inizi la dichiarazione [mysqldump], e aggiungi di nuovo le righe rosse

#Moodle - Matteo  
innodb_file_format = Barracuda  
innodb_file_per_table = 1  
innodb_large_prefix  
  
character-set-client-handshake = FALSE  
character-set-server = utf8mb4  
collation-server = utf8mb4_unicode_ci  
  
[mysqldump]  
quick  
quote-names  
max_allowed_packet = 16M

Queste modifiche sono necessarie perché sono prerequisiti per installare Moodle, altrimenti durante l’installazione non ti permetterà di procedere.

Dopo di che, riavvia MySql con:

/etc/init.d/mysql restart

5. Preparare l’installazione di Moodle

Siamo ora pronti a preparare l’installazione di Moodle, lo faremo dalla riga di comando perché è più veloce rispetto a FTP :)

Vai su questa pagina e seleziona l’installazione che soddisfa le tue esigenze, in un ambiente di produzione ti consiglio di utilizzare la versione stabile. Al momento in cui scriviamo, è la 3.2.2.

Quindi dalla riga di comando vai nella directory web del tuo sito, nel mio caso, questi sono i comandi:

cd /var/www/course.servisys.it/web 
rm index.html
wget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.2.tgz
tar -zxvf moodle-3.2.2.tgz
cp -pr moodle/* ./
cp -pr moodle/.* ./

quando usi il comando cd, ovviamente cambialo con il nome del tuo sito.

Abbiamo rimosso la pagina predefinita index.html, poiché vogliamo che la prima pagina servita sia index.php.

Dopo di che, dobbiamo sistemare la proprietà dei file, per adattarli ai nostri utenti e gruppi, per sapere quale è corretto per te basta lanciare un

ls -al

dovresti vedere molti file, e alcuni dei contenuti utente web client, nel mio caso:

drwxr-xr-x 18 1005 1005 4096 mar 11 22:16 report  
drwxr-xr-x 24 1005 1005 4096 mar 11 22:16 repository  
-rwxr-xr-- 1 web42 client1 14 apr 13 17:25 robots.txt  
drwxr-xr-x 2 1005 1005 4096 mar 11 22:16 rss  
drwxr-xr-x 7 1005 1005 4096 mar 11 22:16 search  
drwxr-xr-x 2 web42 client1 4096 apr 13 17:25 stats  
drwxr-xr-x 5 1005 1005 4096 mar 11 22:16 tag  
-rw-r--r-- 1 1005 1005 615 mar 11 22:16 tags.txt  
drwxr-xr-x 6 1005 1005 4096 mar 11 22:16 theme

come puoi vedere, il mio utente è web42 e il mio gruppo è client1, quindi ora sistema i permessi con:

chown -R web42:client1 *
chown -R web42:client1 .*

e ripristina i permessi delle directory

chown root:root stats/ error/

poi andiamo a creare una directory moodledata non accessibile pubblicamente, per farlo, semplicemente creala nella directory privata.

mkdir ../private/moodledata
chown -R web42:client1 ../private/moodledata

6. Installazione Web di Moodle

Eccoci! Ora possiamo iniziare l’ultimo passaggio dell’installazione, apri il tuo browser, dovresti ottenere una pagina simile a questa quando apri l’URL del sito web:

Seleziona la lingua e fai clic su avanti.

La directory dati predefinita per Moodle verrà visualizzata come /var/www/clients/client1/web42/moodledata ma la nostra directory è nella cartella privata, quindi modifica il percorso in modo che utilizzi la cartella moodle nella cartella privata invece: /var/www/clients/client1/web42/private/moodledata

Quindi seleziona il Tipo di Database, nel mio caso MySql.

Poi completa con i Dati MySql.

Host del database: localhost

Nome del database: c1_moodle

Utente del database: c1_moodle

Password del database: quella che hai scelto durante la creazione dell’Utente Database

Prefisso della tabella: mdl_

Porta del database:

Socket Unix:

Ora fai clic e aspetta, dopo alcuni secondi dovresti vedere le condizioni, che dovresti accettare.

Dopo di che, Moodle eseguirà alcuni controlli di sistema per testare che tutto funzioni correttamente.

Tutto dovrebbe essere verde in questo momento!!!

Fai clic su Continua e altri controlli appariranno….

Fai clic su continua e compila i dati dell’utente admin (Nome, Nome, password utente..).

Dovresti compilare i dati della tua nuova piattaforma di apprendimento e test :)

Buon divertimento con i tuoi corsi!

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.