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
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
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.
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.
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.
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.
Lesen Sie auf dem nächsten Bildschirm die Moodle-Lizenzbedingungen und klicken Sie auf die Schaltfläche Fortfahren, um die Lizenzbedingungen zu bestätigen.
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.
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.
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.
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.
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.
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 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