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:0MariaDB [mysql]> Flush-Privilegien;Abfrage OK, 0 Zeilen betroffen (0,00 Sek.)MariaDB [mysql]> beendenTschüssNachdem 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_installationHINWEIS: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 rootERROR 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 -pPasswort 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
ByeMoodle 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-intlFühren Sie den folgenden Befehl aus, um zu überprüfen, ob alle installierten PHP-Module in Ihrem System aktiviert sind
php7.0 –mTesten 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 –tlpnAus 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-tulpnFalls 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 WWWoder
ufw erlaubt 80/tcpFalls 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-persistentiptables -I INPUT -p tcp --destination-port 80 -j ACCEPTnetfilter-persistent savesystemctl restart netfilter-persistentsystemctl status netfilter-persistentsystemctl enable netfilter-persistent.serviceFalls 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 ACCEPTnetfilter-persistent savesystemctl restart netfilter-persistentMö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 schreibensystemctl startet Apache2 neuTesten 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.iniSuchen, 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/LondonErhö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=1Schließ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.iniNachdem 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 neuUm ü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 ssla2ensite 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.confAuszug aus der SSL-Site-Konfigurationsdatei:
Options +FollowSymlinks
AllowOverride All
Erfordert alle gewährtenNehmen 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ährtenStarten 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 neuhttps://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/tcpWenn 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 ACCEPTnetfilter-persistent savesystemctl restart netfilter-persistentsystemctl status netfilter-persistentUm 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.phphttps://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.cnfAuszug 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.cnf50-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 überspringenUm 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 neusystemctl status mysqlMelden 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 -pWillkommen 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)]> beendenTschüssMoodle 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.zipNachdem 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 entpackenlsrm /var/www/html/index.htmlrm /var/www/html/info.phpKopieren 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/moodledatachown -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/.htaccessFü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 -IndizesCron 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 -eFügen Sie die folgende Zeile hinzu und speichern Sie den Cronjob.
*/10 * * * * /usr/bin/php7.0 /var/www/html/admin/cli/cron.php> /dev/nullHerzliche 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