Moodle eLearning-Plattform auf Debian 9 installieren

Moodle ist ein flexibles und leistungsstarkes, kostenloses Open-Source-Kursmanagementsystem und eine E-Learning-Plattform, die in PHP geschrieben und oft unter Linux unter Apache/Nginx-Webservern mit PHP und MySQL/MariaDB-Datenbank-Managementsystem eingesetzt wird, auch bekannt als LAMP- oder LEMP-Stapel.

Dieses Tutorial erklärt, wie Sie die neueste Version von Moodle in Debian 9 installieren und konfigurieren, um eine E-Learning-Plattform bei Ihnen vor Ort zu erstellen.

Die Moodle-Plattform bietet eine intuitive Weboberfläche, die von Lehrkräften und Trainern verwendet werden kann, um Kursdaten zu speichern und den Überblick über Studenten, Noten und Online-Kurse zu behalten. Die meisten großen Universitäten weltweit setzen die E-Learning-Plattform Moodle ein, um die Bildungsaktivitäten für ihre Schüler und Lehrer zu erleichtern.

Anforderungen

Um Moodle erfolgreich installieren und einsetzen zu können, muss Ihr Server die folgenden Anforderungen erfüllen.

  • Ein Debian 9-Server, der mit minimalen Softwareanforderungen auf einer Bare-Metal-Server-Maschine oder auf einem Virtual Private Server installiert ist.
  • Direkter Zugriff auf das Root-Konto über die Konsole oder SSH oder Remote- oder Direktzugriff auf ein Konto mit Root-Rechten, das über das sudo-Dienstprogramm erworben wurde.
  • Eine Netzwerkschnittstellenkarte, die mit einer statischen IP-Adresse konfiguriert ist.
  • Um die Moodle-E-Mail-Registrierung, Benachrichtigungen oder eine andere Art von Funktionen nutzen zu können, sollten Sie bei sich vor Ort einen Mailserver mit Zugriff auf IMAP-, POP3- und SMTP-Dienste ordnungsgemäß einrichten.
  • Ein privater oder öffentlicher Domänenname, abhängig von Ihrer Bereitstellung, mit den richtigen DNS-Einträgen, die für Webdienste konfiguriert sind. Wenn Sie keinen gültigen oder registrierten Domainnamen haben, können Sie die Installation durchführen und über Ihre Server-IP-Adresse auf die Website zugreifen.

Apache, PHP und MySQL installieren

Im ersten Schritt, bevor Sie mit der Installation und Konfiguration der Moodle-Plattform beginnen, melden Sie sich zuerst bei Ihrem Server mit Root-Konto oder einem Konto mit Root-Power an und beginnen Sie mit der Aktualisierung von Debian-System-Repositorien und Softwarepaketen, indem Sie die folgenden Befehle ausführen.

apt update
apt upgrade

Als nächstes, nachdem Sie die Systemsoftware aktualisiert haben, konfigurieren Sie den Namen Ihres Debian-Servers, indem Sie die folgenden Befehle ausführen. Stellen Sie sicher, dass Sie die Variable hostname entsprechend Ihren eigenen Einstellungen ersetzen, wie im folgenden Beispiel gezeigt.

hostnamectl set-hostname www.myblog.com

Anschließend können Sie Ihren Maschinen-Hostnamen und Ihre Hosts-Datei überprüfen, indem Sie die folgenden Befehle ausführen.

hostnamectl
cat /etc/hostname
hostname –s
hostname –f

Um die Kernel-Updates und die Änderungen des Hostnamens anzuwenden, geben Sie den folgenden Befehl ein, um den Computer neu zu starten.

systemctl reboot

Eine der wichtigsten LAMP-Komponenten für den Einsatz der Lernplattform Moodle ist eine RDBMS-Datenbank, die von der Webanwendung zum Speichern verschiedener Konfigurationen wie Benutzer, Sitzungen, Kontakte und andere Daten verwendet wird. In diesem Tutorial konfigurieren wir Moodle CMS mit MariaDB-Datenbank-Backend mit Loopback-Zugang zur MySQL-Datenbank. Das bedeutet, dass der Zugriff auf die Datenbank nur über localhost oder 127.0.0.0.0.1 Adresse möglich ist. Es können keine externen Verbindungen zur MySQL-Datenbank hergestellt werden. Um den MariaDB-Datenbankserver und -Client auf dem Debian 9-Server zu installieren, geben Sie den folgenden Befehl ein.

apt install mariadb-server mariadb-client

Nachdem die MariaDB-Datenbank die Installation auf Ihrem Debian-Server abgeschlossen hat, geben Sie Folgendes ein netstat Befehl wie im folgenden Beispiel gezeigt, um zu überprüfen, ob der Dienst betriebsbereit ist und auf localhost, Port 3306, nach Verbindungen sucht.

netstat –tlpn | grep mysql

Für den Fall netstat Netzwerkdienstprogramm nicht standardmäßig in Ihrem Debian-System installiert ist, führen Sie den folgenden Befehl aus, um es zu installieren.

apt install net-tools

Das MySQL-Root-Konto ist in Debian 9 zur Installationszeit nicht ordnungsgemäß gesichert. Sie können sich ohne Root-Passwort an der Datenbank anmelden. Um das Root-Konto zu schützen, melden Sie sich bei der MySQL-Serverkonsole an und führen Sie die folgenden Befehle aus.

mysql -h localhost
Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 2

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type ‚help;‘ or ‚\h‘ for help. Type ‚\c‘ to clear the current input statement.

MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Database changed

MariaDB [mysql]> update user set plugin='' where user='root';
Query OK, 1 row affected (0.00 sec)

Rows matched: 1 Changed: 1 Warnings: 0

MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> exit
Bye

Nachdem Sie das Datenbank-Root-Konto ordnungsgemäß erzwungen haben, führen Sie die Funktion mysql_secure_installation Das Skript stellt Ihnen eine Reihe von Fragen, die zur Sicherung der MariaDB-Datenbank entwickelt wurden: wenn Sie das MySQL-Root-Passwort ändern, anonyme Benutzer entfernen, Remote-Root-Logins deaktivieren und die Testdatenbank löschen möchten. Führen Sie das Skript aus, indem Sie den folgenden Befehl ausführen und sicherstellen, dass Sie Folgendes eingeben ja zu allen Fragen, wie im folgenden Skript-Ausgabeauszug gezeigt:

mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current

password for the root user. If you've just installed MariaDB, and

you haven't set the root password yet, the password will be blank,

so you should just press enter here.

Enter current password for root (enter for none):

OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.

You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them. This is intended only for testing, and to make the installation

go a bit smoother. You should remove them before moving into a

production environment.

Remove anonymous users? [Y/n] y

... Success!

Normally, root should only be allowed to connect from 'localhost'. This

ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y

... Success!

By default, MariaDB comes with a database named 'test' that anyone can

access. This is also intended only for testing, and should be removed

before moving into a production environment.

Remove test database and access to it? [Y/n] y

- Dropping test database...

... Success!

- Removing privileges on test database...

... Success!

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

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!

Nachdem Sie den MySQL-Daemon gesichert haben, melden Sie sich bei der Datenbankkonsole an und geben Sie kein Passwort für das Root-Konto ein. Der Zugriff auf die Datenbank sollte verweigert werden, wenn kein Passwort für das Root-Konto angegeben ist, wie im folgenden Befehlsauszug dargestellt:

mysql -h localhost -u root
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Die Anmeldung an der MySQL-Datenbankkonsole sollte gewährt werden, wenn Sie die Option Wurzel Passwort, wie im Befehlsbeispiel gezeigt:

mysql -h localhost -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.

Your MariaDB connection id is 15

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> exit

Bye

Moodle CMS ist eine webbasierte Anwendung, die hauptsächlich in der serverseitigen Programmiersprache PHP geschrieben ist. Bisher haben wir nur die MySQL-Datenbankkomponente von LAMP installiert. Um die PHP-Dateiskripte der Anwendung auszuführen, muss ein Webserver, wie z.B. der Apache HTTP-Server, und ein PHP-Verarbeitungs-Gateway im System installiert und in Betrieb sein. Um den Apache Webserver und den PHP-Interpreter sowie alle erforderlichen PHP-Module zu installieren, die die Anwendung benötigt, um ordnungsgemäß zu funktionieren, geben Sie den folgenden Befehl in Ihrer Serverkonsole aus.

apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-mysql php7.0-gd php7.0-opcache php7.0-json php7.0-mbstring php7.0-xml php7.0-ldap php7.0-cli php7.0-curl php7.0-ldap php7.0-zip php7.0-bcmath php-imagick php7.0-xmlrpc php7.0-soap php7.0-intl

Geben Sie den folgenden Befehl ein, um zu überprüfen, ob alle installierten PHP-Module in Ihrem System aktiviert sind.

php7.0 –m

Nachdem Apache und PHP installiert wurden, testen Sie, ob der Webserver läuft und warten Sie auf Netzwerkverbindungen auf Port 80, indem Sie den folgenden Befehl mit root-Rechten ausführen.

netstat –tlpn

Aus der Ausgabe des netstat-Befehls können wir ersehen, dass der Apache Webserver auf Port 80 auf eingehende Netzwerkverbindungen wartet. Für die gleiche Aufgabe können Sie auch die Funktion ss Befehl, der in Debian 9 standardmäßig automatisch installiert wird.

ss- tulpn

Falls die UFW-Firewall-Anwendung installiert und im Debian-Server aktiviert ist, sollten Sie eine neue Regel hinzufügen, um den HTTP-Verkehr durch die Firewall zu leiten, indem Sie den folgenden Befehl ausführen.

ufw allow WWW

oder

ufw allow 80/tcp

Für den Fall iptables rohe Regeln werden vom Systemadministrator verwendet, um Firewall-Regeln im Debian-Server zu verwalten, fügen Sie die folgenden Regeln hinzu, um eingehenden Datenverkehr auf Port 80 auf der Firewall zu ermöglichen, so dass Besucher die Online-Anwendung durchsuchen können.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent
systemctl status netfilter-persistent
systemctl enable netfilter-persistent.service

Falls Sie Ihren Debian-Server über SSH aus der Ferne verwalten, stellen Sie sicher, dass Sie die folgende Regel hinzufügen, um eingehende SSH-Verbindungen auf Ihrem Rechner zuzulassen.

iptables -I INPUT -p tcp --destination-port 22 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent

Möglicherweise müssen Sie auch die folgenden Apache-Module aktivieren und aktivieren, die von der Moodle-Anwendung für die ordnungsgemäße Ausführung benötigt werden, indem Sie die folgenden Befehle ausführen.

a2enmod rewrite
systemctl restart apache2

Testen Sie abschließend, ob die Standardwebseite des Apache Webservers im Browser Ihres Clients angezeigt werden kann, indem Sie die IP-Adresse Ihres Debian-Rechners oder Ihren Domänennamen oder Server FQDN per HTTP-Protokoll besuchen, wie im folgenden Bild gezeigt. Wenn Sie die IP-Adresse Ihres Computers nicht kennen, führen Sie aus ifconfig oder ip a Befehl, um die IP-Adresse Ihres Servers preiszugeben.

http://your_domain.tld

Apache Standardseite

Bearbeiten Sie im nächsten Schritt die PHP-Standardkonfigurationsdatei, um sicherzustellen, dass die folgenden PHP-Variablen aktiviert sind und das PHP Zeitzone Einstellung ist korrekt konfiguriert und entspricht Ihrem geografischen Standort des Systems. Offen /etc/php/7.0/apache2/php.ini Datei zur Bearbeitung und stellen Sie sicher, dass die folgenden Zeilen wie folgt aufgebaut sind. Machen Sie auch zunächst ein Backup der PHP-Konfigurationsdatei.

cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini

Suchen, bearbeiten und ändern Sie die folgenden Variablen in der Datei php.ini Konfigurationsdatei:

file_uploads = On
memory_limit = 128M
post_max_size = 80M
upload_max_filesize = 80M
default_charset = UTF-8
date.timezone = Europe/London

Erhöhen upload_max_file_size_size Variable, die geeignet ist, große Dateianhänge zu unterstützen, wenn dies der Fall ist, und ersetzen Sie die Datei Datum.Zeitzone Variable entsprechend Ihrer geographischen Zeit, indem Sie die Liste der Zeitzonen einsehen, die von PHP-Dokumenten unter folgendem Link bereitgestellt werden. http://php.net/manual/en/timezones.php

Wenn Sie die Ladegeschwindigkeit Ihrer Webseiten über das für PHP7 verfügbare OPCache Plugin erhöhen möchten, fügen Sie die folgenden OPCache Einstellungen am unteren Rand der Konfigurationsdatei des PHP-Interpreters an, unterhalb der Datei (opcache) Anweisung, wie im Folgenden beschrieben:

nano /etc/php/7.0/apache2/conf.d/10-opcache.ini
[opcache]
opcache.enable=1 
opcache.enable_cli=1 
opcache.interned_strings_buffer=8 
opcache.max_accelerated_files=10000 
opcache.memory_consumption=128 
opcache.save_comments=1
opcache.revalidate_freq=1

Schließen Sie die php.ini Konfigurationsdatei und prüfen Sie, ob das Ende der PHP-Konfigurationsdatei verifiziert wurde, um zu überprüfen, ob die OPCache-Variablen korrekt hinzugefügt wurden, indem Sie den folgenden Befehl ausführen.

grep opcache /etc/php/7.0/apache2/conf.d/10-opcache.ini

Nachdem Sie alle oben beschriebenen Änderungen vorgenommen haben, starten Sie den Apache-Daemon neu, um die neuen Änderungen durch Ausführen des folgenden Befehls anzuwenden.

systemctl restart apache2

Um auf die Moodle-Webschnittstelle über das HTTPS-Protokoll zuzugreifen, das den Datenverkehr für Ihre Kunden sichert, geben Sie den folgenden Befehl aus, um das Apache Webserver-SSL-Modul und die SSL-Standortkonfigurationsdatei zu aktivieren.

a2enmod ssl
a2ensite default-ssl.conf

Als nächstes öffnen Sie die Apache Standard-SSL-Site-Konfigurationsdatei mit einem Texteditor und aktivieren Sie die URL-Rewrite-Regeln, indem Sie die folgenden Codezeilen hinzufügen nach DocumentRoot Direktive, wie im folgenden Beispiel gezeigt:

nano /etc/apache2/sites-enabled/default-ssl.conf

Auszug aus der Konfigurationsdatei der SSL-Site:

<Directory /var/www/html>
  Options +FollowSymlinks
  AllowOverride All
  Require all granted
</Directory>

Nehmen Sie auch die folgende Änderung an der VirtualHost-Zeile vor, um wie im folgenden Auszug dargestellt auszusehen:

<VirtualHost *:443>

Schließen Sie die SSL-Apache-Datei und öffnen Sie die Datei /etc/apache2/sites-enabled/000-default.conf Datei zur Bearbeitung und fügen Sie die gleichen URL-Rewrite-Regeln hinzu wie bei der SSL-Konfigurationsdatei. Fügen Sie die Zeilen des Codes nach dem DocumentRoot Anweisung, wie im folgenden Beispiel gezeigt.

<Directory /var/www/html>
  Options +FollowSymlinks
  AllowOverride All
  Require all granted
</Directory>

Starten Sie schließlich den Apache-Daemon neu, um alle bisher konfigurierten Regeln anzuwenden und Ihre Domäne über das HTTP-Protokoll zu besuchen. Da Sie die von Apache zur Installationszeit automatisch ausgegebenen Self-Signed-Zertifikatspaare verwenden, ist das Zertifikat vom Browser nicht vertrauenswürdig, eine Fehlermeldung sollte im Browser angezeigt werden.

systemctl restart apache2

https://yourdomain.tld

Akzeptieren Sie die Warnung, um das nicht vertrauenswürdige Zertifikat zu akzeptieren und werden Sie weiterhin auf die Standardwebseite des Apache weitergeleitet.

Falls die UFW-Firewall-Anwendung eingehende Netzwerkverbindungen zum HTTPS-Port blockiert, sollten Sie eine neue Regel hinzufügen, damit der HTTPS-Verkehr die Firewall passieren kann, indem Sie den folgenden Befehl ausführen.

ufw allow ‘WWW Full’

oder

ufw allow 443/tcp

Wenn iptables ist die Standard-Firewall-Anwendung, die installiert wird, um Ihr Debian-System auf Netzwerkebene zu schützen, fügen Sie die folgende Regel hinzu, um eingehenden Datenverkehr auf Port 443 in der Firewall zu erlauben, so dass Besucher Ihren Domänennamen durchsuchen können.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
netfilter-persistent save
systemctl restart netfilter-persistent
systemctl status netfilter-persistent

Um schließlich alle Server-PHP-Variablen anzuzeigen, erstellen Sie eine PHP-Infodatei, indem Sie den folgenden Befehl ausführen und überprüfen, ob die PHP-Zeitzone korrekt konfiguriert wurde, indem Sie die PHP-Info-Skriptdatei von einem Browser aus unter der folgenden URL aufrufen, wie im folgenden Bild dargestellt. Scrollen Sie nach unten zu denDatum Einstellung, um die Konfiguration der PHP-Zeitzone zu überprüfen.

echo '<?php phpinfo(); ?>'| tee /var/www/html/info.php

https://domain.tld/info.php

Als nächstes, bevor wir die Datenbank erstellen, die Moodle zum Speichern von Informationen benötigt, müssen wir zuerst einige Änderungen am MariaDB-Server vornehmen und den richtigen Zeichensatz einrichten. Öffnen Sie die MariaDB-Client-Konfigurationsdatei und fügen Sie die folgende Zeile hinzu (Kunde) Direktive, wie im folgenden Beispiel veranschaulicht:

nano /etc/mysql/mariadb.conf.d/50-client.cnf
[client]
# Default is Latin1, if you need UTF-8 set this (also in server section)
default-character-set = utf8mb4

Öffnen Sie anschließend die Datei mysql.cnf und fügen Sie die gleiche Zeile wie oben nach der Anweisung[mysql] hinzu:

nano /etc/mysql/conf.d/mysql.cnf

mysql.cnf Dateiauszug:

default-character-set = utf8mb4

Öffnen Sie die Konfigurationsdatei des MariaDB-Servers und fügen Sie die folgenden Zeilen hinzu (mysqld) Anweisung, um sicherzustellen, dass die MySQL-Engine innodb Verwendungen Barrakuda Dateiformat und utf8mb4 Zeichensatz.

nano /etc/mysql/mariadb.conf.d/50-server.cnf

50-server.cnf Dateiauszug:

[mysqld]
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake

Um alle bisher vorgenommenen Änderungen auf die Datenbank zu übertragen, starten Sie den MySQL-Daemon neu und überprüfen Sie, ob der Dienst ausgeführt wird, indem Sie die folgenden Befehle ausführen.

systemctl restart mysql
systemctl status mysql

Melden Sie sich schließlich in der MariaDB-Datenbankkonsole an und erstellen Sie eine Datenbank für die Anwendung mit einem Benutzer und einem Passwort, das zur Verwaltung der Anwendungsdatenbank verwendet wird, indem Sie die folgenden Befehle ausführen. Achten Sie darauf, dass Sie Datenbankname, Benutzer und Passwort entsprechend ersetzen.

mysql –u root -p
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 2

Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> CREATE DATABASE moodle_db;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on moodle_db.* to 'moodle_user'@'localhost' identified by 'password1234';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye

Moodle installieren

Nachdem alle Systemanforderungen für die Installation der Moodle CMS-Anwendung erfüllt sind, besuchen Sie die offizielle Moodle-Download-Seite unter https://download.moodle.org/releases/latest/ und holen Sie sich das neueste zip-komprimierte Archiv in Ihrem System, indem Sie den folgenden Befehl ausführen.

wget https://download.moodle.org/download.php/direct/stable34/moodle-latest-34.zip

Nachdem der Download des Zip-Archivs abgeschlossen ist, extrahieren Sie die Moodle-Zip-Archivdatei in Ihr aktuelles Arbeitsverzeichnis und listen Sie die extrahierten Dateien auf, indem Sie die folgenden Befehle ausführen. Entfernen Sie auch die standardmäßige index.html-Datei, die vom Apache Webserver installiert wurde, im Webroot-Pfad und löschen Sie auch die zuvor erstellte info.php-Datei.

unzip moodle-latest-34.zip
ls
rm /var/www/html/index.html
rm /var/www/html/info.php

Kopieren Sie dann den gesamten Inhalt des von Moodle extrahierten Verzeichnisses in den Stammpfad Ihres Webservers, indem Sie den folgenden Befehl ausführen. Stellen Sie außerdem sicher, dass Sie die folgenden versteckten Punktdateien in den Webroot-Pfad kopieren.

cp -rf moodle/* /var/www/html/
cp -rf moodle/.eslint* /var/www/html/
cp -rf moodle/.gherkin-lintrc /var/www/html/
cp -rf moodle/.jshintrc /var/www/html/
cp -rf moodle/.s* /var/www/html/
cp -rf moodle/.travis.yml /var/www/html/

Als nächstes erstellen Sie das Datenverzeichnis für Moodle eine Ebene bis zu Ihrer Serverdokument-Root und führen Sie die folgenden Befehle aus, um dem Apache Runtime-Benutzer volle Schreibrechte für den Webroot-Pfad und das Moodle-Datenverzeichnis zu gewähren. Verwendung ls Befehl, um Berechtigungen für die installierten Dateien der Anwendung aufzulisten, die sich im Verzeichnis /var/wwww/html/ Verzeichnis befinden.

mkdir /var/www/moodledata
chown -R www-data:www-data /var/www/moodledata/
chown -R www-data:www-data /var/www/html/
ls -al /var/www/html/

Beginnen wir nun mit der Installation von Moodle CMS über das Web-Interface-Installationsprogramm. Öffnen Sie einen Browser und navigieren Sie über das HTTPS-Protokoll zu der IP-Adresse oder dem Domänennamen Ihres Servers. Wählen Sie auf dem ersten Installationsbildschirm die Installationssprache und klicken Sie auf die Schaltfläche Weiter, um fortzufahren.

Moodle-Installation

Auf dem nächsten Bildschirm fordert Sie der Installer auf, die Webserver-Adresse, den Moodle-Verzeichnispfad und den Moodle-Datenverzeichnispfad zu bestätigen. Lassen Sie die ersten beiden Pfadvariablen als Standard und fügen Sie folgende hinzu /var/wwww/moodledata für den Verzeichnispfad von Moodle Data, wie im folgenden Bild dargestellt. Klicken Sie auf die Schaltfläche Weiter, um fortzufahren.

Pfade bestätigen

Wählen Sie auf dem nächsten Bildschirm MariaDB (native/madiadb) als Datenbanktreiber und klicken Sie auf die Schaltfläche Weiter, um den Installationsvorgang fortzusetzen.

Datenbanktreiber auswählen

Als nächstes fügen Sie Ihre Datenbankeinstellungen hinzu, wie z.B. Datenbank-Host, Name, Benutzer und Passwort. Verwenden Sie den Datenbanknamen und die Anmeldeinformationen, die zuvor für die Moodle-Datenbank konfiguriert wurden.

Der Datenbank-Host sollte auf localhost eingestellt sein. Fügen Sie Ihr eigenes Präfix für die Datenbanktabelle hinzu, verwenden Sie 3306 als Datenbankport und klicken Sie auf die Schaltfläche Weiter, um diesen Schritt abzuschließen und den Installationsprozess fortzusetzen.

Datenbankeinstellungen

Lesen Sie auf dem nächsten Bildschirm die Moodle-Lizenzbedingungen und klicken Sie auf die Schaltfläche Fortfahren, um die Lizenzbedingungen zu bestätigen.

Installation starten

Als nächstes führt das Moodle-Installationsskript eine Reihe von Serverprüfungen durch, um festzustellen, ob alle Anforderungen für die Fortsetzung des Installationsprozesses erfüllt sind. Überprüfen Sie, ob alle Datenbank- und PHP-Erweiterungen auf OK gesetzt sind, scrollen Sie nach unten und klicken Sie auf die Schaltfläche Fortfahren, um mit dem Installationsprozess fortzufahren.

Überprüfung der Serveranforderungen

Warten Sie anschließend, bis der Installer die Installation einer Reihe von Modulen abgeschlossen hat, und klicken Sie erneut auf die Schaltfläche Fortfahren, um zum nächsten Schritt zu gelangen.

Installation der Module

Fügen Sie im nächsten Schritt ein Moodle-Administratorkonto hinzu, wählen Sie ein sicheres Passwort für dieses Konto und füllen Sie alle Kontoinformationen wie Vorname, Nachname, E-Mail, Ort, Land, Zeitzone und Beschreibung aus. Wenn Sie fertig sind, klicken Sie auf die Schaltfläche Profil aktualisieren, um die Informationen zum Admin-Konto zu speichern.

Richten Sie die Moodle-Details wie Zeitzone etc. ein.

Als nächstes richten Sie den vollständigen Seitennamen ein, fügen Sie einen kurzen Seitennamen und eine Zusammenfassung der Titelseite hinzu, scrollen Sie nach unten und klicken Sie auf die Schaltfläche Änderungen speichern, um den Installationsprozess abzuschließen.

Einstellungen auf der Titelseite

Nach Abschluss des Installationsprozesses werden Sie zum Moodle Administration Dashboard weitergeleitet. Hier können Sie das Registrierungsformular verwenden, um die Anwendung beim Moodle.net-Portal zu registrieren.

Moodle Admin Dashboard

Um auf die Moodle-Frontend-Seite zuzugreifen, öffnen Sie einen Browser und navigieren Sie über das HTTPS-Protokoll zu Ihrer Server-IP-Adresse oder Ihrem Domänennamen.

Moodle Frontend

Kehren Sie schließlich zur Debian-Serverkonsole zurück und erstellen Sie eine .htaccess Datei, die sich im Root-Pfad Ihres Website-Dokuments befindet, indem Sie den folgenden Befehl ausführen.

nano /var/www/html/.htaccess

Fügen Sie in der Datei.htaccess die folgenden Zeilen hinzu, damit Sie die Einstellungen des nativen PHP-Servers an Ihre eigenen Serverressourcen und -konfigurationen anpassen können.

.htaccess Dateiauszug:

# PHP-Einstellungen ändern

php_value register_globals 1
php_value upload_max_filesize 100M
php_value post_max_size 100M
Options -Indexes

Cron installieren

Um das Moodle-Wartungsskript, das E-Mails versendet, die Datenbank bereinigt, Feeds oder andere Aufgaben aktualisiert, regelmäßig auszuführen, fügen Sie den folgenden Cron-Job hinzu, der alle 10 Minuten ausgeführt wird, indem Sie den folgenden Befehl ausführen.

crontab -u www-data -e

Füge die folgende Zeile hinzu und speichere den Cronjob.

*/10 * * * * /usr/bin/php7.0 /var/www/html/admin/cli/cron.php  >/dev/null

Herzlichen Glückwunsch! Sie haben Moodle CMS erfolgreich auf dem Debian 9 Server installiert und konfiguriert. Die Moodle-Dokumentationsseite finden Sie unter folgender Adresse: https://docs.moodle.org/23/en/Main_page

Das könnte dich auch interessieren …