GNU/Linux >> LINUX-Kenntnisse >  >> Debian

Installieren Sie die Moodle eLearning-Plattform auf Debian 9

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

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

Die Moodle-Plattform bietet eine intuitive Webschnittstelle, die von Pädagogen und Trainern verwendet werden kann, um Kursdaten zu speichern und Schüler, Noten und Online-Kurse im Auge 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 vereinfachen.

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 einem Virtual Private Server installiert ist
  • direkter Zugriff auf das Root-Konto über die Konsole oder SSH oder Remote- oder direkter Zugriff auf ein Konto mit Root-Berechtigungen, die über das Dienstprogramm sudo erlangt wurden
  • Eine Netzwerkschnittstellenkarte, die mit einer statischen IP-Adresse konfiguriert ist
  • Um die Moodle-E-Mail-Registrierung, Benachrichtigungen oder andere Funktionen nutzen zu können, sollten Sie einen ordnungsgemäßen Mailserver bei Ihnen vor Ort mit Zugriff auf IMAP-, POP3- und SMTP-Dienste 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

Installieren Sie Apache, PHP und MySQL

Bevor Sie mit der Installation und Konfiguration der Moodle-Plattform beginnen, melden Sie sich im ersten Schritt zunächst mit einem Root-Konto oder einem Konto mit Root-Berechtigungen bei Ihrem Server an und beginnen Sie mit der Aktualisierung von Debian-System-Repositories 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 für Ihren Debian-Server, indem Sie die folgenden Befehle ausführen. Stellen Sie sicher, dass Sie die Hostname-Variable so ersetzen, dass sie Ihren eigenen Einstellungen entspricht, wie im folgenden Beispiel dargestellt.

hostnamectl set-hostname www.myblog.com

Anschließend können Sie den Hostnamen und die Hosts-Datei Ihres Computers überprüfen, indem Sie die folgenden Befehle ausführen.

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

Um die Kernel-Updates anzuwenden und die Änderungen des Hostnamens zu übernehmen, führen Sie den folgenden Befehl aus, um den Computer neu zu starten.

Systemctl-Neustart

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 wie Benutzer, Sitzungen, Kontakte und andere Daten zu speichern. In diesem Tutorial konfigurieren wir Moodle CMS mit MariaDB-Datenbank-Backend mit Loopback-Zugriff auf die MySQL-Datenbank. Das bedeutet, dass auf die Datenbank nur über die Adresse localhost oder 127.0.0.1 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 die Installation auf Ihrem Debian-Server abgeschlossen hat, geben Sie netstat aus Befehl wie im folgenden Beispiel gezeigt, um zu überprüfen, ob der Dienst aktiv ist und ausgeführt wird und auf Verbindungen auf localhost, Port 3306, wartet.

netstat –tlpn | grep mysql

Falls 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 zum Zeitpunkt der Installation nicht richtig gesichert. Sie können sich ohne Root-Passwort bei der Datenbank anmelden. Um das Root-Konto zu sichern, melden Sie sich bei der MySQL-Serverkonsole an und führen Sie die folgenden Befehle sicher 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. Geben Sie '\c' ein, um die aktuelle Eingabeanweisung zu löschen.
MariaDB [(keine)]>   Verwenden Sie mysql;
Lesen von Tabelleninformationen zur Vervollständigung von Tabellen- und Spaltennamen

Sie können diese Funktion für einen schnelleren Start mit -A


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

Übereinstimmende Zeilen:1 Geändert:1 Warnungen:0
MariaDB [mysql]> Flush-Privilegien;
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)  
MariaDB [mysql]> beenden
Tschüss  

Nachdem Sie das Datenbank-Root-Konto ordnungsgemäß erzwungen haben, führen Sie die mysql_secure_installation aus Skript, das von Debian-Stretch-Repositories während der Installation der Datenbank bereitgestellt wird, um die MySQL-Datenbank weiter zu sichern. Das Skript stellt Ihnen eine Reihe von Fragen zur Sicherung der MariaDB-Datenbank:ob Sie das MySQL-Root-Passwort ändern möchten, um anonyme Benutzer zu entfernen, um Deaktivieren Sie Remote-Root-Anmeldungen und löschen Sie die Testdatenbank. Führen Sie das Skript aus, indem Sie den folgenden Befehl ausführen, und vergewissern Sie sich, dass Sie yes eingeben auf alle Fragen, wie im folgenden Auszug der Skriptausgabe gezeigt:

mysql_secure_installation
HINWEIS:DAS AUSFÜHREN ALLER TEILE DIESES SKRIPTS WIRD FÜR ALLE MariaDB

SERVER IM PRODUKTIONSEINSATZ EMPFOHLEN! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!


Um sich zur Sicherung bei MariaDB anzumelden, benötigen wir das aktuelle

Passwort für den Root-Benutzer. Wenn Sie MariaDB gerade erst installiert und

das Root-Passwort noch nicht festgelegt haben, ist das Passwort leer,

also sollten Sie hier einfach die Eingabetaste drücken.


Aktuelles Passwort für root eingeben (Eingabe für keins):

OK, Passwort erfolgreich verwendet, weiter geht es...


Durch das Festlegen des Root-Passworts wird sichergestellt, dass sich niemand ohne die entsprechende Berechtigung in den MariaDB

Root-Benutzer einloggen kann.


Sie haben bereits ein Root-Passwort festgelegt, damit Sie sicher mit 'n' antworten können.

Das Root-Passwort ändern? [Y/n] y

Neues Passwort:

Neues Passwort erneut eingeben:

Passwort erfolgreich aktualisiert!

Berechtigungstabellen werden neu geladen..

... Erfolgreich!


Standardmäßig hat eine MariaDB-Installation einen anonymen Benutzer, der jedem erlaubt

sich bei MariaDB anzumelden, ohne dass ein Benutzerkonto für sie erstellt werden muss

. Dies ist nur zum Testen 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

... Erfolgreich!


Normalerweise sollte root nur erlaubt sein, sich von 'localhost' zu verbinden. Dies

stellt sicher, dass niemand das Root-Passwort aus dem Netzwerk erraten kann.


Root-Login aus der Ferne nicht zulassen? [Y/n] y

... Erfolgreich!


Standardmäßig enthält MariaDB eine Datenbank namens „test“, die jeder verwenden kann

Zugang. Dies ist ebenfalls nur für Testzwecke gedacht und sollte

vor dem Wechsel in eine Produktionsumgebung entfernt werden.


Testdatenbank und Zugriff darauf entfernen? [Y/n] y

- Testdatenbank wird gelöscht...

... Erfolgreich!

- Berechtigungen für Testdatenbank werden entfernt.. .

... Erfolgreich!


Das Neuladen der Berechtigungstabellen stellt sicher, dass alle bisher vorgenommenen Änderungen

sofort wirksam werden .


Berechtigungstabellen jetzt neu laden? [Y/n] y

... Erfolgreich!

Aufräumen...

Alles erledigt! Wenn Sie alle oben genannten Schritte ausgeführt haben, sollte Ihre MariaDB

Installation jetzt sicher sein.

Danke, dass Sie MariaDB verwenden!

Nachdem Sie den MySQL-Daemon gesichert haben, melden Sie sich schließlich 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 bereitgestellt wird, wie im folgenden Befehlsauszug dargestellt:

mysql -h localhost -u root
ERROR 1045 (28000):Zugriff verweigert für Benutzer 'root'@'localhost' (mit Passwort:NO)  

Die Anmeldung bei der MySQL-Datenbankkonsole sollte gewährt werden, wenn Sie root angeben Passwort, wie im Befehlsbeispiel gezeigt:

mysql -h localhost -u root -p
Passwort eingeben:

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. Geben Sie '\c' ein, um die aktuelle Eingabeanweisung zu löschen.

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, müssen ein Webserver, wie z. B. ein Apache HTTP-Server, und ein PHP-Verarbeitungsgateway im System installiert und 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, damit sie ordnungsgemäß ausgeführt wird, geben Sie den folgenden Befehl in Ihrer Serverkonsole ein.

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

Testen Sie nach der Installation von Apache und PHP, ob der Webserver betriebsbereit ist und auf Port 80 auf Netzwerkverbindungen wartet, indem Sie den folgenden Befehl mit Root-Rechten ausgeben.

netstat –tlpn

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

ss-tulpn

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

ufw erlaubt WWW

oder

ufw erlaubt 80/tcp

Falls iptables Raw-Regeln werden vom Systemadministrator verwendet, um Firewall-Regeln auf dem Debian-Server zu verwalten. Fügen Sie die folgenden Regeln hinzu, um eingehenden Datenverkehr von Port 80 auf 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 über SSH fernverwalten, stellen Sie sicher, dass Sie die folgende Regel hinzufügen, um eingehende SSH-Verbindungen zu Ihrem Computer 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 benötigt werden, um ordnungsgemäß zu funktionieren, indem Sie die folgenden Befehle ausführen.

a2enmod neu schreiben
systemctl startet Apache2 neu

Testen Sie schließlich, 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 über das HTTP-Protokoll besuchen, wie in der folgenden Abbildung gezeigt. Wenn Sie die IP-Adresse Ihres Computers nicht kennen, führen Sie ifconfig aus oder ip a Befehl, um die IP-Adresse Ihres Servers anzuzeigen.

http://ihre_domain.tld

Bearbeiten Sie im nächsten Schritt die PHP-Standardkonfigurationsdatei, um sicherzustellen, dass die folgenden PHP-Variablen und die Zeitzone von PHP aktiviert sind Die Einstellung ist korrekt konfiguriert und entspricht dem geografischen Standort Ihres Systems. Öffnen Sie /etc/php/7.0/apache2/php.ini Datei zum Bearbeiten und vergewissern Sie sich, dass die folgenden Zeilen wie folgt eingerichtet sind. Erstellen Sie außerdem zunächst eine Sicherungskopie 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 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 upload_max_file_size Variable als geeignet, um große Dateianhänge zu unterstützen, falls dies der Fall ist, und ersetzen Sie date.timezone Variable entsprechend Ihrer geografischen Zeit, indem Sie die Liste der Zeitzonen konsultieren, die von PHP-Dokumenten unter folgendem Link bereitgestellt wird:http://php.net/manual/en/timezones.php

Wenn Sie die Ladegeschwindigkeit Ihrer Website-Seiten über das für PHP7 verfügbare OPCache-Plug-in erhöhen möchten, fügen Sie die folgenden OPCache-Einstellungen am Ende der Konfigurationsdatei des PHP-Interpreters unter [opcache ] Anweisung, wie unten 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 überprüfen Sie, ob das Ende der PHP-Konfigurationsdatei überprüft 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 zu übernehmen, indem Sie den folgenden Befehl ausführen.

systemctl startet Apache2 neu

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

a2enmod ssl
a2ensite default-ssl.conf

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

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

Auszug aus der SSL-Site-Konfigurationsdatei:


Options +FollowSymlinks
AllowOverride All
Erfordert alle gewährten

Nehmen Sie außerdem die folgende Änderung an der VirtualHost-Zeile vor, damit sie wie im folgenden Auszug aussieht:

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


Options +FollowSymlinks
AllowOverride All
Erfordert alle gewährten

Starten Sie abschließend den Apache-Daemon neu, um alle bisher konfigurierten Regeln anzuwenden, und besuchen Sie Ihre Domain über das HTTP-Protokoll. Da Sie die automatisch selbstsignierten Zertifikatspaare verwenden, die von Apache zum Zeitpunkt der Installation ausgestellt werden, ist das Zertifikat vom Browser nicht vertrauenswürdig, eine Fehlermeldung sollte im Browser angezeigt werden.

systemctl startet Apache2 neu

https://ihredomain.tld

Akzeptieren Sie die Warnung, um das nicht vertrauenswürdige Zertifikat zu akzeptieren und weiterhin zur Apache-Standardwebseite umgeleitet 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 passieren zu lassen, indem Sie den folgenden Befehl ausgeben.

ufw erlaubt „WWW Full“

oder

ufw erlaubt 443/tcp

Wenn iptables die standardmäßig installierte Firewall-Anwendung ist, um Ihr Debian-System auf Netzwerkebene zu schützen, fügen Sie die folgende Regel hinzu, um eingehenden Datenverkehr über Port 443 in der Firewall zuzulassen, damit 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 PHP-Variablen des Servers anzuzeigen, erstellen Sie eine PHP-Infodatei, indem Sie den folgenden Befehl ausführen, und überprüfen Sie, ob die PHP-Zeitzone korrekt konfiguriert wurde, indem Sie die PHP-Info-Skriptdatei von einem Browser unter der folgenden URL aufrufen, wie unten dargestellt Bild. Scrollen Sie nach unten zum Datum Einstellung zum Überprüfen der PHP-Zeitzonenkonfiguration.

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

https://domain.tld/info.php

Bevor wir die von Moodle zum Speichern von Informationen benötigte Datenbank erstellen, müssen wir zunächst einige Änderungen am MariaDB-Server vornehmen und den richtigen Zeichensatz einrichten. Öffnen Sie die Konfigurationsdatei des MariaDB-Clients und fügen Sie die folgende Zeile nach [client] hinzu Direktive, 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 Serverbereich)
default-character-set =utf8mb4

Öffnen Sie als Nächstes die Datei mysql.cnf und fügen Sie dieselbe Zeile wie oben nach der [mysql]-Anweisung hinzu:

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

Auszug aus der mysql.cnf-Datei:

Standardzeichensatz =utf8mb4

Öffnen Sie die MariaDB-Serverkonfigurationsdatei zum Bearbeiten und fügen Sie die folgenden Zeilen nach [mysqld] hinzu -Anweisung, um sicherzustellen, dass die MySQL-Engine innodb verwendet Barracuda 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

Zeichensatzserver =utf8mb4
sortierungsserver =utf8mb4_unicode_ci
Zeichensatz-Client-Handshake überspringen

Um alle bisher vorgenommenen Änderungen an der Datenbank zu übernehmen, starten Sie den MySQL-Daemon neu und prüfen Sie, ob der Dienst läuft, indem Sie die folgenden Befehle ausführen.

systemctl startet mysql neu
systemctl status mysql

Melden Sie sich schließlich bei der MariaDB-Datenbankkonsole an und erstellen Sie eine Datenbank für die Anwendung mit einem Benutzer und einem Passwort, das zum Verwalten der Anwendungsdatenbank verwendet wird, 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. Geben Sie '\c' ein, um die aktuelle Eingabeanweisung zu löschen.
MariaDB [(keine)]> DATENBANK ERSTELLEN moodle_db;
Abfrage OK, 1 Zeile betroffen (0,00 Sek.)  
MariaDB [(none)]> Gewähren Sie 'moodle_user'@'localhost', identifiziert durch 'password1234', alle Privilegien auf moodle_db.*;
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)  
MariaDB [(keine)]> Flush-Privilegien;
Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)  
MariaDB [(keine)]>  beenden
Tschüss  

Moodle installieren

Nachdem alle Systemanforderungen erfüllt sind, um die Moodle CMS-Anwendung zu installieren, besuchen Sie die offizielle Download-Seite von Moodle 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 außerdem die vom Apache-Webserver installierte Standarddatei index.html im Webroot-Pfad und löschen Sie auch die zuvor erstellte Datei info.php.

moodle-latest-34.zip entpacken
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 Webserver-Dokuments, 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 höher als Ihr Serverdokumentenstamm und führen Sie die folgenden Befehle aus, um dem Apache-Laufzeitbenutzer vollständige Schreibberechtigungen für den Webstammpfad und das Moodle-Datenverzeichnis zu erteilen. Verwenden Sie ls Befehl zum Auflisten der Berechtigungen für die installierten Dateien der Anwendung, die sich im Verzeichnis /var/www/html/ 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 Webinterface-Installationsprogramm. Öffnen Sie einen Browser und navigieren Sie über das HTTPS-Protokoll zu Ihrer Server-IP-Adresse oder Ihrem Domänennamen. Wählen Sie auf dem ersten Installationsbildschirm die Installationssprache und klicken Sie auf die Schaltfläche Weiter, um fortzufahren.

Auf dem nächsten Bildschirm fordert Sie das Installationsprogramm auf, die Webserveradresse, den Moodle-Verzeichnispfad und den Moodle-Datenverzeichnispfad zu bestätigen. Belassen Sie die ersten beiden Pfadvariablen als Standard und fügen Sie /var/www/moodledata hinzu für den Moodle Data-Verzeichnispfad, wie im folgenden Bild dargestellt. Klicken Sie auf die Schaltfläche Weiter, um fortzufahren.

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

Fügen Sie als Nächstes Ihre Datenbankeinstellungen hinzu, z. B. Datenbankhost, Name, Benutzer und Kennwort. Verwenden Sie den Datenbanknamen und die Anmeldeinformationen, die zuvor für die Moodle-Datenbank konfiguriert wurden.

Der Datenbankhost sollte auf localhost festgelegt werden. Fügen Sie Ihr eigenes Datenbanktabellenpräfix hinzu, verwenden Sie 3306 als Datenbankport und klicken Sie auf die Schaltfläche Weiter, um diesen Schritt abzuschließen und den Installationsvorgang fortzusetzen.

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

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

Warten Sie als Nächstes, während das Installationsprogramm die Installation einer Reihe von Modulen abgeschlossen hat, und klicken Sie erneut auf die Schaltfläche „Weiter“, um mit dem nächsten Schritt fortzufahren.

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, Stadt, Land, Zeitzone und Beschreibung aus. Wenn Sie fertig sind, klicken Sie auf die Schaltfläche Profil aktualisieren, um die Administratorkontoinformationen zu speichern.

Richten Sie als Nächstes den vollständigen Site-Namen ein, fügen Sie einen kurzen Site-Namen und eine Zusammenfassung der Titelseite hinzu, scrollen Sie nach unten und klicken Sie auf die Schaltfläche Änderungen speichern, um den Installationsvorgang abzuschließen.

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

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.

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

nano /var/www/html/.htaccess

Fügen Sie in der .htaccess-Datei die folgenden Zeilen hinzu, damit Sie die nativen PHP-Servereinstellungen 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
Optionen -Indizes

Cron installieren

Um das Moodle-Wartungsskript regelmäßig auszuführen, das E-Mails versendet, die Datenbank bereinigt, Feeds aktualisiert oder andere Aufgaben erledigt, 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

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


Debian
  1. So installieren Sie Redis Server unter Debian 11

  2. So installieren Sie MySQL 8.0 / 5.7 unter Debian 11 / Debian 10

  3. So installieren Sie ProFTPD unter Debian 8

  4. So installieren Sie MySQL Server unter Debian 9

  5. Installieren Sie Cockpit unter Debian 9

Installieren Sie einen Redis-Server auf Debian 11

So installieren Sie I2P auf einem Debian-Server:

Installieren Sie Firefox Sync Server auf Debian 11

So installieren Sie VNC unter Debian 10

So installieren Sie Moodle unter Debian 10

So installieren Sie VNC-Server unter Debian 11