Moodle Installation · 17 min read · Sep 24, 2025

Installieren der Moodle eLearning-Plattform auf Debian 9

Moodle ist ein flexibles und leistungsstarkes, kostenloses Open-Source-Kursverwaltungssystem und eine eLearning-Plattform, die in PHP geschrieben ist und häufig unter Linux unter Apache/Nginx-Webservern mit PHP und MySQL/MariaDB-Datenbankmanagementsystem eingesetzt wird, auch bekannt als LAMP- oder LEMP-Stack.

Dieses Tutorial erklärt, wie Sie die neueste Version von Moodle in der Debian 9-Version installieren und konfigurieren, um eine eLearning-Plattform in Ihren Räumlichkeiten zu erstellen.

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

Anforderungen

Um Moodle erfolgreich zu installieren und bereitzustellen, muss Ihr Server die folgenden Anforderungen erfüllen.

  • Ein Debian 9-Server, der mit minimalen Softwareanforderungen auf einer Bare-Metal-Servermaschine oder auf einem virtuellen privaten Server installiert ist
  • Direkter Zugriff auf das Root-Konto über Konsole oder SSH oder remote oder direkter Zugriff auf ein Konto mit Root-Rechten, die über das sudo-Utility erlangt wurden
  • Eine Netzwerkschnittstellenkarte, die mit einer statischen IP-Adresse konfiguriert ist
  • Um die Moodle-E-Mail-Registrierung, Benachrichtigungen oder andere Arten von Funktionen zu nutzen, sollten Sie einen Mailserver an Ihrem Standort richtig einrichten, mit Zugriff auf IMAP-, POP3- und SMTP-Dienste.
  • Ein privater oder öffentlicher Domainname, 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 die Website über die IP-Adresse Ihres Servers aufrufen.

Installieren von Apache, PHP und MySQL

Im ersten Schritt, bevor Sie mit der Installation und Konfiguration der Moodle-Plattform beginnen, melden Sie sich zuerst mit dem Root-Konto oder einem Konto mit Root-Rechten an Ihrem Server an und beginnen Sie, die Debian-System-Repositorys und Softwarepakete zu aktualisieren, 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 Hostnamen-Variable durch Ihre eigenen Einstellungen ersetzen, wie im folgenden Beispiel dargestellt.

hostnamectl set-hostname www.myblog.com

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

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

Um die Kernel-Updates anzuwenden und die Hostnamenänderungen zu übernehmen, führen Sie den folgenden Befehl aus, um die Maschine neu zu starten.

systemctl reboot

Eine der wichtigsten LAMP-Komponenten für die Bereitstellung der Moodle-Lernplattform ist eine RDBMS-Datenbank, die von der Webanwendung verwendet wird, um verschiedene Konfigurationen zu speichern, wie z. B. Benutzer, Sitzungen, Kontakte und andere Daten. In diesem Tutorial werden wir das Moodle-CMS mit dem MariaDB-Datenbank-Backend mit Loopback-Zugriff auf die MySQL-Datenbank konfigurieren. Das bedeutet, dass die Datenbank nur über localhost oder 127.0.0.1-Adresse zugegriffen werden kann. Es können keine externen Verbindungen zur MySQL-Datenbank hergestellt werden. Um den MariaDB-Datenbankserver und -client auf dem Debian 9-Server zu installieren, führen Sie den folgenden Befehl aus.

apt install mariadb-server mariadb-client

Nachdem die MariaDB-Datenbank auf Ihrem Debian-Server installiert wurde, führen Sie den netstat-Befehl wie im folgenden Beispiel aus, um zu überprüfen, ob der Dienst aktiv ist und auf localhost, Port 3306, auf Verbindungen hört.

netstat –tlpn | grep mysql

Falls das netstat-Netzwerk-Utility standardmäßig nicht 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 bei der Installation in Debian 9 nicht ordnungsgemäß gesichert. Sie können sich ohne ein Root-Passwort in die Datenbank einloggen. Um das Root-Konto zu sichern, melden Sie sich an der MySQL-Serverkonsole an und führen Sie die folgenden Befehle aus.

mysql -h localhost
Willkommen beim MariaDB-Monitor. Befehle enden mit ; oder \g.  

Ihre MariaDB-Verbindungs-ID ist 2  

Serverversion: 10.1.26-MariaDB-0+deb9u1 Debian 9.1  

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab und andere.  

Geben Sie 'help;' oder '\h' für Hilfe ein. Geben Sie '\c' ein, um die aktuelle Eingabeaufforderung zu löschen.
MariaDB [(none)]> use mysql;
Lese Tabelleninformationen zur Vervollständigung von Tabellen- und Spaltennamen  

Sie können dieses Feature deaktivieren, um einen schnelleren Start mit -A zu erhalten  

Datenbank geändert
MariaDB [mysql]> update user set plugin='' where user='root';
Abfrage OK, 1 Zeile betroffen (0.00 sec)  

Zeilen übereinstimmend: 1 Geändert: 1 Warnungen: 0
MariaDB [mysql]> flush privileges;
Abfrage OK, 0 Zeilen betroffen (0.00 sec)
MariaDB [mysql]> exit
Tschüss

Nachdem Sie das Datenbank-Root-Konto ordnungsgemäß gesichert haben, führen Sie das mysql_secure_installation-Skript aus, das von den Debian-Stretch-Repositorys bereitgestellt wird, während Sie die Datenbank installieren, um die MySQL-Datenbank weiter abzusichern. Das Skript wird Ihnen eine Reihe von Fragen stellen, die darauf abzielen, die MariaDB-Datenbank abzusichern: ob Sie das MySQL-Root-Passwort ändern möchten, 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 eingeben, und stellen Sie sicher, dass Sie auf alle Fragen mit ja antworten, wie im folgenden Auszug aus der Skriptausgabe gezeigt:

mysql_secure_installation
HINWEIS: DAS AUSFÜHREN ALLER TEILE DIESES SKRIPTS WIRD FÜR ALLE MariaDB  
SERVER IM PRODUKTIVE EINSATZ EMPFOHLEN! BITTE JEDEN SCHRITT SORGFÄLTIG LESEN!  

Um sich bei MariaDB anzumelden, um es abzusichern, benötigen wir das aktuelle  
Passwort für den Root-Benutzer. Wenn Sie MariaDB gerade installiert haben und  
Sie das Root-Passwort noch nicht festgelegt haben, ist das Passwort leer,  
Sie sollten hier einfach die Eingabetaste drücken.  

Geben Sie das aktuelle Passwort für root ein (drücken Sie Enter für keines):  

OK, Passwort erfolgreich verwendet, weiter...  

Das Festlegen des Root-Passworts stellt sicher, dass niemand ohne die richtige Autorisierung auf den MariaDB-Root-Benutzer zugreifen kann.  

Sie haben bereits ein Root-Passwort festgelegt, daher können Sie sicher mit 'n' antworten.  
Root-Passwort ändern? [Y/n] y  
Neues Passwort:  
Neues Passwort erneut eingeben:  
Passwort erfolgreich aktualisiert!  
Aktualisieren der Berechtigungstabellen..  
... Erfolg!  

Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der es jedem  
ermöglicht, sich bei MariaDB anzumelden, ohne dass ein Benutzerkonto für  
ihn erstellt werden muss. Dies ist nur für Tests gedacht und um die Installation  
etwas reibungsloser zu gestalten. Sie sollten sie entfernen, bevor Sie in eine  
Produktionsumgebung wechseln.  

Anonyme Benutzer entfernen? [Y/n] y  
... Erfolg!  

Normalerweise sollte root nur von 'localhost' aus verbunden werden dürfen. Dies  
stellt sicher, dass jemand das Root-Passwort nicht über das Netzwerk erraten kann.  

Remote-Root-Login deaktivieren? [Y/n] y  
... Erfolg!  

Standardmäßig kommt MariaDB mit einer Datenbank namens 'test', auf die jeder  
zugreifen kann. Dies ist ebenfalls nur für Tests gedacht und sollte entfernt  
werden, bevor Sie in eine Produktionsumgebung wechseln.  

Testdatenbank und Zugriff darauf entfernen? [Y/n] y  
- Testdatenbank löschen...  
... Erfolg!  
- Berechtigungen für die Testdatenbank entfernen...  
... Erfolg!  

Das Aktualisieren der Berechtigungstabellen stellt sicher, dass alle bisher  
getätigten Änderungen sofort wirksam werden.  

Berechtigungstabellen jetzt aktualisieren? [Y/n] y  
... Erfolg!  
Aufräumen...  
Alles erledigt! Wenn Sie alle oben genannten Schritte abgeschlossen haben, sollte Ihre MariaDB  
Installation jetzt sicher sein.  

Danke, dass Sie MariaDB verwenden!

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

mysql -h localhost -u root
FEHLER 1045 (28000): Zugriff verweigert für Benutzer 'root'@'localhost' (Passwort verwendet: NEIN)

Das Anmelden an der MySQL-Datenbankkonsole sollte gewährt werden, wenn Sie das root-Passwort angeben, wie im Befehlsbeispiel gezeigt:

mysql -h localhost -u root -p
Geben Sie das Passwort ein:  

Willkommen beim MariaDB-Monitor. Befehle enden mit ; oder \g.  

Ihre MariaDB-Verbindungs-ID ist 15  

Serverversion: 10.1.26-MariaDB-0+deb9u1 Debian 9.1  

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab und andere.  

Geben Sie 'help;' oder '\h' für Hilfe ein. Geben Sie '\c' ein, um die aktuelle Eingabeaufforderung zu löschen.  

MariaDB [(none)]> exit  

Tschüss

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 installiert und im System betriebsbereit sein. Um den Apache-Webserver und den PHP-Interpreter zusammen mit allen erforderlichen PHP-Modulen zu installieren, die von der Anwendung benötigt werden, um ordnungsgemäß zu funktionieren, führen 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

Führen Sie den folgenden Befehl aus, 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 aktiv ist und auf Netzwerkverbindungen auf Port 80 hört, indem Sie den folgenden Befehl mit Root-Rechten ausführen.

netstat –tlpn

Aus der Ausgabe des netstat-Befehls können wir sehen, dass der Apache-Webserver auf eingehende Netzwerkverbindungen auf Port 80 hört. Für dieselbe Aufgabe können Sie auch den ss-Befehl verwenden, der standardmäßig automatisch in Debian 9 installiert ist.

ss- tulpn

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

ufw allow WWW

oder

ufw allow 80/tcp

Falls iptables-Raw-Regeln vom Systemadministrator verwendet werden, um Firewall-Regeln im Debian-Server zu verwalten, fügen Sie die folgenden Regeln hinzu, um den eingehenden Verkehr auf Port 80 in der Firewall zuzulassen, damit 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 remote über SSH verwalten, stellen Sie sicher, dass Sie die folgende Regel hinzufügen, um eingehende SSH-Verbindungen zu Ihrer Maschine zuzulassen.

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

Sie müssen möglicherweise auch die folgenden Apache-Module aktivieren und aktivieren, die von der Moodle-Anwendung benötigt werden, um ordnungsgemäß zu funktionieren, indem Sie die folgenden Befehle ausführen.

a2enmod rewrite
systemctl restart apache2

Testen Sie schließlich, ob die Standard-Webseite des Apache-Webservers im Browser Ihres Clients angezeigt werden kann, indem Sie die IP-Adresse Ihrer Debian-Maschine oder Ihren Domainnamen oder den FQDN-Server über das HTTP-Protokoll besuchen, wie im folgenden Bild gezeigt. Wenn Sie Ihre Maschinen-IP-Adresse nicht kennen, führen Sie den ifconfig- oder ip a-Befehl aus, um die IP-Adresse Ihres Servers anzuzeigen.

http://your_domain.tld

Apache-Standardseite

Im nächsten Schritt bearbeiten Sie die Standardkonfigurationsdatei von PHP, um sicherzustellen, dass die folgenden PHP-Variablen aktiviert sind und die PHP-timezone-Einstellung korrekt konfiguriert ist und mit Ihrem geografischen Standort übereinstimmt. Öffnen Sie die /etc/php/7.0/apache2/php.ini-Datei zur Bearbeitung und stellen Sie sicher, dass die folgenden Zeilen wie folgt eingerichtet sind. Machen Sie auch zunächst eine Sicherung 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 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 Sie die upload_max_file_size-Variable nach Bedarf, um große Datei-Anhänge zu unterstützen, falls dies der Fall ist, und ersetzen Sie die date.timezone-Variable entsprechend Ihrer geografischen Zeit, indem Sie die Liste der von PHP-Dokumenten bereitgestellten Zeitzonen unter dem folgenden Link http://php.net/manual/en/timezones.php konsultieren.

Wenn Sie die Ladegeschwindigkeit Ihrer Webseiten über das OPCache-Plugin, das für PHP7 verfügbar ist, erhöhen möchten, fügen Sie die folgenden OPCache-Einstellungen am Ende der PHP-Interpreter-Konfigurationsdatei unter der [opcache]-Anweisung hinzu, wie unten detailliert:

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 überprüfen Sie das Ende der PHP-Konfigurationsdatei, 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 anzuwenden, indem Sie den folgenden Befehl ausführen.

systemctl restart apache2

Um auf die Moodle-Weboberfläche über das HTTPS-Protokoll zuzugreifen, das den Datenverkehr für Ihre Kunden sichert, führen Sie den folgenden Befehl aus, um das SSL-Modul des Apache-Webservers und die SSL-Site-Konfigurationsdatei zu aktivieren.

a2enmod ssl
a2ensite default-ssl.conf

Öffnen Sie als Nächstes die Standard-SSL-Site-Konfigurationsdatei von Apache mit einem Texteditor und aktivieren Sie die URL-Umschreibregeln, indem Sie die folgenden Codezeilen nach der DocumentRoot-Direktive hinzufügen, wie im folgenden Beispiel gezeigt:

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

Auszug aus der SSL-Site-Konfigurationsdatei:

  
  Options +FollowSymlinks  
  AllowOverride All  
  Require all granted  

Ändern Sie auch die folgende Zeile in der VirtualHost-Zeile, damit sie wie im folgenden Auszug aussieht:

Schließen Sie die SSL-Apache-Datei und öffnen Sie die /etc/apache2/sites-enabled/000-default.conf-Datei zur Bearbeitung und fügen Sie die gleichen URL-Umschreibregeln wie für die SSL-Konfigurationsdatei hinzu. Fügen Sie die Codezeilen nach der DocumentRoot-Anweisung wie im folgenden Beispiel gezeigt ein.

  
  Options +FollowSymlinks  
  AllowOverride All  
  Require all granted  

Starten Sie schließlich den Apache-Daemon neu, um alle bisher konfigurierten Regeln anzuwenden, und besuchen Sie Ihre Domain über das HTTP-Protokoll. Da Sie die automatisch selbstsignierten Zertifikatpaare verwenden, die von Apache bei der Installation ausgestellt wurden, ist das Zertifikat im 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 weiterhin zur Standard-Webseite von Apache weitergeleitet zu werden.

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

ufw allow ‘WWW Full’

oder

ufw allow 443/tcp

Wenn iptables die standardmäßige Firewall-Anwendung ist, die zum Schutz Ihres Debian-Systems auf Netzwerkebene installiert ist, fügen Sie die folgende Regel hinzu, um den eingehenden Verkehr auf Port 443 in der Firewall zuzulassen, damit Besucher Ihren Domainnamen durchsuchen können.

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

Schließlich, um alle PHP-Variablen des Servers anzuzeigen, erstellen Sie eine PHP-Info-Datei, 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 unter der folgenden URL besuchen, wie im folgenden Bild dargestellt. Scrollen Sie nach unten zur date-Einstellung, um die PHP-Zeitzonenkonfiguration zu überprüfen.

echo ''| tee /var/www/html/info.php

https://domain.tld/info.php

Als Nächstes, bevor Sie die Datenbank erstellen, die von Moodle benötigt wird, um Informationen zu speichern, müssen wir zunächst einige Änderungen am MariaDB-Server vornehmen und das richtige Zeichensatz festlegen. Öffnen Sie die Konfigurationsdatei des MariaDB-Clients und fügen Sie die folgende Zeile nach der [client]-Direktive hinzu, wie im folgenden Beispiel dargestellt:

nano /etc/mysql/mariadb.conf.d/50-client.cnf
[client]  
# Standard ist Latin1, wenn Sie UTF-8 benötigen, setzen Sie dies (auch im Serverabschnitt)  
default-character-set = utf8mb4

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

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

Auszug aus der mysql.cnf-Datei:

default-character-set = utf8mb4

Öffnen Sie die Konfigurationsdatei des MariaDB-Servers zur Bearbeitung und fügen Sie die folgenden Zeilen nach der [mysqld]-Anweisung hinzu, um sicherzustellen, dass die MySQL-Engine innodb das Barracuda-Dateiformat und den utf8mb4-Zeichensatz verwendet.

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

Auszug aus der 50-server.cnf-Datei:

[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 an der Datenbank anzuwenden, starten Sie den MySQL-Daemon neu und überprüfen Sie, ob der Dienst läuft, indem Sie die folgenden Befehle ausführen.

systemctl restart mysql
systemctl status mysql

Schließlich melden Sie sich an der MariaDB-Datenbankkonsole an und erstellen Sie eine Datenbank für die Anwendung mit einem Benutzer und einem Passwort, die zur Verwaltung der Anwendungsdatenbank verwendet werden, indem Sie die folgenden Befehle ausführen. Stellen Sie sicher, dass Sie den Datenbanknamen, den Benutzer und das Passwort entsprechend ersetzen.

mysql –u root -p
Willkommen beim MariaDB-Monitor. Befehle enden mit ; oder \g.  

Ihre MariaDB-Verbindungs-ID ist 2  

Serverversion: 10.1.26-MariaDB-0+deb9u1 Debian 9.1  

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab und andere.  

Geben Sie 'help;' oder '\h' für Hilfe ein. Geben Sie '\c' ein, um die aktuelle Eingabeaufforderung zu löschen.
MariaDB [(none)]> CREATE DATABASE moodle_db;
Abfrage OK, 1 Zeile betroffen (0.00 sec)**
MariaDB [(none)]> grant all privileges on moodle_db.* to 'moodle_user'@'localhost' identified by 'password1234';
Abfrage OK, 0 Zeilen betroffen (0.00 sec)
MariaDB [(none)]> flush privileges;
Abfrage OK, 0 Zeilen betroffen (0.00 sec)
MariaDB [(none)]> exit
Tschüss

Moodle installieren

Nachdem alle Systemanforderungen erfüllt sind, um die Moodle-CMS-Anwendung zu installieren, besuchen Sie die offizielle Moodle-Download-Seite unter https://download.moodle.org/releases/latest/ und laden Sie das neueste zip-komprimierte Archiv in Ihr System herunter, 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 im Webroot-Pfad installiert wurde, 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 extrahierten Moodle-Verzeichnisses in Ihren Webserver-Dokumentenstamm, 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/

Erstellen Sie als Nächstes das Datenverzeichnis für Moodle eine Ebene über Ihrem Server-Dokumentenstamm und führen Sie die folgenden Befehle aus, um dem Apache-Laufzeitbenutzer vollständige Schreibberechtigungen für den Webroot-Pfad und das Moodle-Datenverzeichnis zu gewähren. Verwenden Sie den ls-Befehl, um die Berechtigungen für die installierten Dateien der Anwendung im Verzeichnis /var/www/html/ aufzulisten.

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/

Jetzt beginnen wir mit der Installation von Moodle CMS über den Weboberflächen-Installer. Öffnen Sie einen Browser und navigieren Sie zu Ihrer Server-IP-Adresse oder Ihrem Domainnamen über das HTTPS-Protokoll. Wählen Sie auf dem ersten Installationsbildschirm die Installationssprache aus und drücken Sie die Schaltfläche Weiter, um fortzufahren.

Moodle-Installation

Auf dem nächsten Bildschirm wird der Installer Sie auffordern, die Webserveradresse, den Moodle-Verzeichnispfad und den Moodle-Datenverzeichnispfad zu bestätigen. Lassen Sie die ersten beiden Pfadvariablen als Standard und fügen Sie /var/www/moodledata für den Moodle-Datenverzeichnispfad hinzu, wie im folgenden Bild dargestellt. Drücken Sie die Schaltfläche Weiter, um fortzufahren.

Pfad bestätigen

Auf dem nächsten Bildschirm wählen Sie MariaDB (native/mariadb) als Datenbanktreiber und drücken Sie die Schaltfläche Weiter, um den Installationsprozess fortzusetzen.

Datenbanktreiber auswählen

Fügen Sie als Nächstes Ihre Datenbankeinstellungen hinzu, wie z. B. Datenbank-Host, Name, Benutzer und Passwort. Verwenden Sie den zuvor konfigurierten Datenbanknamen und die Anmeldeinformationen für die Moodle-Datenbank.

Der Datenbank-Host sollte auf localhost gesetzt werden. Fügen Sie Ihr eigenes Datenbanktabellenpräfix hinzu, verwenden Sie 3306 als Datenbankport und drücken Sie die Schaltfläche Weiter, um diesen Schritt abzuschließen und den Installationsprozess fortzusetzen.

Datenbankeinstellungen

Auf dem nächsten Bildschirm lesen Sie die Lizenzbedingungen von Moodle und drücken die Schaltfläche Weiter, um die Lizenzbedingungen zu bestätigen.

Installation starten

Als Nächstes führt das Moodle-Installationsskript eine Reihe von Serverüberprüfungen durch, um festzustellen, ob alle Anforderungen erfüllt sind, um den Installationsprozess fortzusetzen. Überprüfen Sie, ob alle Datenbank- und PHP-Erweiterungen auf OK gesetzt sind, scrollen Sie nach unten und drücken Sie die Schaltfläche Weiter, um mit dem Installationsprozess fortzufahren.

Serveranforderungsprüfung

Warten Sie als Nächstes, während der Installer eine Reihe von Modulen installiert, und drücken Sie erneut die Schaltfläche Weiter, um zum nächsten Schritt zu gelangen.

Module installieren

Im nächsten Schritt fügen Sie ein Moodle-Administratorkonto hinzu, wählen ein sicheres Passwort für dieses Konto und füllen alle Kontoinformationen aus, wie Vorname, Nachname, E-Mail, Stadt, Land, Zeitzone und Beschreibung. Wenn Sie fertig sind, drücken Sie die Schaltfläche Profil aktualisieren, um die Informationen des Administratorkontos zu speichern.

Moodle-Details wie Zeitzone usw. einrichten

Als Nächstes richten Sie den vollständigen Site-Namen ein, fügen einen kurzen Site-Namen und eine Zusammenfassung der Startseite hinzu, scrollen nach unten und drücken die Schaltfläche Änderungen speichern, um den Installationsprozess abzuschließen.

Startseiteneinstellungen

Nach Abschluss des Installationsprozesses werden Sie zum Moodle-Administrations-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 zu Ihrer Server-IP-Adresse oder Ihrem Domainnamen über das HTTPS-Protokoll.

Moodle-Frontend

Schließlich kehren Sie zur Debian-Serverkonsole zurück und erstellen eine .htaccess-Datei, die sich in Ihrem Dokumentenstamm der Website befindet, indem Sie den folgenden Befehl ausführen.

nano /var/www/html/.htaccess

In der .htaccess-Datei fügen Sie die folgenden Zeilen hinzu, damit Sie die nativen PHP-Servereinstellungen anpassen können, um Ihren eigenen Serverressourcen und -konfigurationen zu entsprechen.

.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 aktualisiert oder andere Aufgaben ausführt, 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ügen Sie die folgende Zeile hinzu und speichern Sie 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

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.