Moodle è una piattaforma di apprendimento open source o un sistema di gestione dei corsi (CMS), un pacchetto software Open Source gratuito progettato per aiutare gli educatori a creare corsi online efficaci.
Questo tutorial coprirà il processo di installazione di Moodle 3.2.x su un server CentOS 7.
Prerequisiti
- Un'istanza del server CentOS 7 x64 con almeno 2 GB di RAM (almeno 4 GB consigliati).
- Un utente sudo .
- Il repository yum EPEL.
Passaggio 1: aggiornare il sistema
Accedere al server tramite SSH utilizzando l'utente sudo per installare epel
, aggiornare il sistema e riavviare per applicare gli aggiornamenti.
sudo yum install epel-release -y
sudo yum update -y && sudo shutdown -r now
Passaggio 2: installare Apache
sudo yum install httpd -y
In produzione, è necessario rimuovere la pagina di benvenuto di Apache preimpostata:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Impedisci ad Apache di elencare i file della directory web ai visitatori:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Avviare il servizio Apache e abilitarlo per l'avvio automatico all'avvio
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Passaggio 3: installare MariaDB 10.x
Moodle archivia tutti i suoi dati in un database MySQL. MariaDB è un sostituto drop-in per MySQL e installeremo l'ultima versione stabile, MariaDB 10.1.
3.1 Creazione del repository YUM MariaDB 10.1
Per creare il file repo MariaDB 10.1 YUM, copiare il segmento di codice seguente sulla console del terminale SSH, quindi premere il Enter
pulsante:
cat <<EOF | sudo tee -a /etc/yum.repos.d/MariaDB.repo
# MariaDB 10.1 CentOS repository list - created 2017-01-14 03:11 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF
3.2 Installare MariaDB 10.1 usando YUM
sudo yum install MariaDB-server MariaDB-client -y
3.3 Avviare il servizio MariaDB e impostarlo come in esecuzione all'avvio del sistema
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
3.4 Assicurare l'installazione di MariaDB
sudo /usr/bin/mysql_secure_installation
Rispondi alle domande come di seguito e assicurati di utilizzare una password di root MariaDB avanzata anziché quella di esempio mostrata di seguito:
- Inserisci la password corrente per root (inserisci per nessuno): basta premere il
Enter
pulsante
- Imposta la password di root? [Y / n]:
Y
- Nuova password:
your-root-password
- Reinserire la nuova password:
your-root-password
- Rimuovere utenti anonimi? [Y / n]:
Y
- Non consentire l'accesso root da remoto? [Y / n]:
Y
- Rimuovere il database di prova e accedervi? [Y / n]:
Y
- Ricarica le tabelle dei privilegi ora? [Y / n]:
Y
3.5 Creare un database MariaDB per Moodle
Accedi alla shell MySQL come root
:
mysql -u root -p
Digitare la password di root MariaDB impostata in precedenza quando richiesto.
Nella shell di MySQL, creare un database moodle
, un utente moodleuser
del database, la password dell'utente del database yourpassword
come segue.
Nota: per motivi di sicurezza, è necessario sostituire la password di esempio yourpassword
sopra menzionata con le proprie.
CREATE DATABASE moodle DEFAULT CHARACTER SET UTF8 COLLATE utf8_unicode_ci;
CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;
Passaggio 4: installa PHP 7.1 e le estensioni PHP 7.1 necessarie
PHP è richiesto anche da Moodle. Per ottenere prestazioni migliori, è possibile installare PHP 7.1 e diverse estensioni PHP 7.1 come segue:
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install mod_php71w php71w-common php71w-mbstring php71w-xmlrpc php71w-soap php71w-gd php71w-xml php71w-intl php71w-mysqlnd php71w-cli php71w-mcrypt php71w-ldap -y
Passaggio 5: installare Moodle 3.2.1
5.1 Preparare i file del programma Moodle
Al momento in cui scrivo, l'ultima versione stabile di Moodle è Moodle 3.2.1
. Scarica e decomprimi l' Moodle 3.2.1
archivio come segue:
Nota: puoi sempre ottenere l'URL di download dell'ultima versione stabile di Moodle dalla sua pagina di download ufficiale .
cd
wget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.1.tgz
sudo tar -zxvf moodle-3.2.1.tgz -C /var/www/html
sudo chown -R root:root /var/www/html/moodle
5.2 Configurare una directory di dati dedicata per Moodle
Per motivi di sicurezza, questa directory di dati deve essere esterna alla directory radice Web:
sudo mkdir /var/www/moodledata
sudo chown -R apache:apache /var/www/moodledata
sudo chmod -R 755 /var/www/moodledata
5.3 Configurare un host virtuale per Moodle
Nota: ricordarsi di sostituire i valori di ServerAdmin
, ServerName
, ServerAlias
, Errorlog
, e CustomLog
con i vostri propri.
cat <<EOF | sudo tee -a /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/moodle/
ServerName moodle.example.com
ServerAlias www.moodle.example.com
<Directory /var/www/html/moodle/>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/moodle.example.com-error_log
CustomLog /var/log/httpd/moodle.example.com-access_log common
</VirtualHost>
EOF
5.4 Installare Moodle dalla CLI
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php
Quando richiesto, fornire le informazioni necessarie in base alle impostazioni specifiche della propria configurazione. Le informazioni di riepilogo sono elencate di seguito:
== Choose a language ==
en - English (en)
? - Available language packs
type value, press Enter to use default value (en)
: en
-------------------------------------------------------------------------------
== Data directories permission ==
type value, press Enter to use default value (2777)
: 2777
-------------------------------------------------------------------------------
== Web address ==
type value
: http://203.0.113.1
-------------------------------------------------------------------------------
== Data directory ==
type value, press Enter to use default value (/var/www/html/moodledata)
: /var/www/moodledata
-------------------------------------------------------------------------------
== Choose database driver ==
mysqli
mariadb
type value, press Enter to use default value (mysqli)
: mariadb
-------------------------------------------------------------------------------
== Database host ==
type value, press Enter to use default value (localhost)
: localhost
-------------------------------------------------------------------------------
== Database name ==
type value, press Enter to use default value (moodle)
: moodle
-------------------------------------------------------------------------------
== Tables prefix ==
type value, press Enter to use default value (mdl_)
: mdl_
-------------------------------------------------------------------------------
== Database port ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Unix socket ==
type value, press Enter to use default value ()
:
-------------------------------------------------------------------------------
== Database user ==
type value, press Enter to use default value (root)
: moodleuser
-------------------------------------------------------------------------------
== Database password ==
type value
: yourpassword
-------------------------------------------------------------------------------
== Full site name ==
type value
: MY Moodle Site
-------------------------------------------------------------------------------
== Short name for site (eg single word) ==
type value
: moodle
-------------------------------------------------------------------------------
== Admin account username ==
type value, press Enter to use default value (admin)
: admin
-------------------------------------------------------------------------------
== New admin user password ==
type value
: your-admin-password
-------------------------------------------------------------------------------
== New admin user email address ==
type value, press Enter to use default value ()
: [email protected]
-------------------------------------------------------------------------------
== Upgrade key (leave empty to not set it) ==
type value
:
-------------------------------------------------------------------------------
Have you read these conditions and understood them?
type y (means yes) or n (means no)
: y
5.5 Modifica le autorizzazioni a /var/www/html/config.php
Dopo aver installato Moodle con successo, devi consentire apache
all'utente di leggere le configurazioni di Moodle modificando le autorizzazioni /var/www/html/config.php
come di seguito:
sudo chmod o+r /var/www/html/moodle/config.php
5.6 Impostazione di un processo cron
Inoltre, è necessario impostare un processo cron per mantenere Moodle in esecuzione correttamente:
sudo crontab -u apache -e
Popolare il file cron con:
* * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null
Salva ed esci:
:wq!
5.7 Riavvia Apache
Riavvia Apache per applicare tutte le modifiche:
sudo systemctl restart httpd.service
5.8 Modifica delle regole del firewall per consentire l'accesso HTTP
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Infine, punta il tuo browser web http://203.0.113.1
per visitare il sito Web Moodle. Utilizzare il nome utente e la password dell'amministratore impostati in precedenza per accedere.
Questo conclude il nostro tutorial. Grazie per aver letto.