So installieren Sie die Moodle Learning Platform mit Nginx in CentOS 8

So installieren Sie die Moodle Learning Platform mit Nginx in CentOS 8

Moodle ist das beliebteste Lernmanagementsystem der Welt, um robuste Online -Lernseiten zu erstellen. Es verfügt über eine Reihe von Aktivitäten und Bildungsinstrumenten, aus denen Sie auswählen können, es unterstützt das Bewertungsmanagement und versendet mit benutzerdefinierten Zertifikaten. Es ermöglicht auch die Kommunikation mit Ihren Schülern in Echtzeit mit einem leistungsstarken Videokonferenz-Tool. Außerdem ist es mobiler, sodass Ihre Schüler aus ihren mobilen Geräten lernen können.

Verwandter Artikel: So installieren Sie die Moodle Learning Platform in Ubuntu

Moodle Server -Anforderungen

  • Betriebssystem: Eine minimale Installation von CentOS 8 oder RHEL 8 -Server mit LEMP -Stack installiert.
  • Festplattenplatz: 200 MB für das Moodle und 5 GB ist wahrscheinlich ein realistisches Minimum an Speichern von Inhalten.
  • Prozessor: 1 GHz (min), 2 GHz Dual-Core oder mehr empfohlen.
  • Speicher: 512 MB (min), 1 GB oder mehr wird empfohlen. 8 GB Plus befindet sich wahrscheinlich auf einem großen Produktionsserver.

Auf dieser Seite

  • Erstellen eines Domain -DNS -Datensatzes für Moodle -Website
  • Installieren von Moodle Learning Platform auf CentOS 8 Server
  • Konfigurieren von Nginx, um die Moodle -Website zu servieren
  • Vervollständigen Sie die Moodle -Installation über das Webinstallateur
  • Aktivieren Sie HTTPS auf der Moodle -Site mit Let's Encrypt

Erstellen eines Domain -DNS -Datensatzes für Moodle -Website

1. Erstellen Sie zunächst eine Subdomain, mit der Benutzer auf die zugreifen können Moodle Online -Lernseite. Zum Beispiel, wenn Ihr Domain -Name ist testProjects.Mich, Sie können eine Subdomäne erstellen, die genannt wird Lernen.testProjects.Mich.

Öffnen Sie Ihren Domainnamen fortgeschritten DNS Einstellungen und fügen Sie eine hinzu A Aufzeichnung wie im folgenden Bild gezeigt.

Fügen Sie einen Datensatz für Moodle Domain hinzu

Installieren von Moodle auf CentOS 8 Server

2. Vor der Installation Moodle, Stellen Sie sicher, dass Sie über die erforderlichen PHP -Erweiterungen auf Ihrem Server verfügen. Sie können den folgenden Befehl ausführen, um diese zu installieren:

# DNF-Installation von PHP-COMMON PHP-ICONV PHP-CURL PHP-MBString PHP-XMLRPC PHP-SOP PHP-GD-PHP-XML PHP-INTL PHP-JSON LIBPCRE3 LIBPCRE3-DEV GRABELL ASPELL CLAMAV CLAMAV 

3. Erstellen Sie als nächstes eine Datenbank für die Moodle Anwendung wie folgt.

# Mysql -u root -p 

Erstellen Sie dann die Datenbank, den Datenbankbenutzer und erstellen Sie ein sicheres Kennwort für die Verwendung.

Mariadb [(keine)]> DATENBANK ERSTELLEN Moodledb; Mariadb [(keine)]> Gewähren Moodledb.* ZU 'MoodLeadmin'@' localhost 'identifiziert von'[E -Mail geschützt]'; Mariadb [(keine)]> Spülung Privilegien; Mariadb [(keine)]> Ausfahrt 

4. Laden Sie nun die neueste Version von herunter Moodle (3.9 Zum Zeitpunkt des Schreibens von der offiziellen Moodle Project -Website extrahieren Sie die Archivdatei und verschieben Sie sie in Ihr Webroot (/var/www/html/) Verzeichnis und setzen.

# WGet -c https: // herunterladen.Moodle.org/download.PHP/Direct/Stable39/Moodle-Latest-39.TGZ # tar-xzvf Moodle-latest-39.TGZ # MV Moodle/var/www/html/ # chmod 775 -r/var/www/html/moodle # chown nginx: nginx -r/var/www/html/Moodle 

5. Erstellen Sie als nächstes die Moodledata Verzeichnis, das den Speicherort der Dateien ist, die von der hochgeladen oder erstellt werden Moodle Schnittstelle und weisen Sie dann geeignete Berechtigungen und Eigentümer zu, damit der Webserver den Zugriff darauf lesen und schreiben kann:

# Mkdir -p/var/www/html/moderatledata # chmod 770 -r/var/www/html/stoodledata # chown: nginx -r/var/www/html/moodledata 

6. Als nächstes gehen Sie in die Moodle Installationsverzeichnis und erstellen a Konfiguration.Php Datei aus dem Beispiel Konfiguration.distanzieren.Php Datei zur Verfügung gestellt und dann für die Bearbeitung geöffnet, um einige Schlüsseleinstellungen für Ihre zu konfigurieren Moodle Plattform, z. B. Datenbankverbindungsparameter und den Standort der Website und wo das Moodledata -Verzeichnis gefunden wird:

# CD/var/www/html/moodle/ # cp config-Dist.PHP -Konfiguration.PHP # VIM -Konfiguration.Php 

Legen Sie den richtigen Datenbasistyp, den korrekten Datenbankhost, den Datenbanknamen und den Datenbankbenutzer und das Kennwort des Benutzers fest.

$ Cfg-> dbType = 'Mariadb'; // 'pgsql', 'mariadb', 'mySqli', 'sqlsrv' oder 'oci' $ cfg-> dBlibrary = 'nativ'; // 'native' nur momentan $ cfg-> dbhost = 'localhost'; // zB 'localhost' oder 'db.ISP.com 'oder ip $ cfg-> dbname ='Moodledb'; // Datenbankname, z. B. Moodle $ cfg-> dbuser = 'MoodLeadmin'; // Ihr Datenbank-Benutzername $ cfg-> dbpass = '[E-Mail geschützt]ZZWD0L2'; // Ihr Datenbankkennwort $ cfg-> prefix = 'mdl_'; // Präfix für alle Tabellennamen zu verwenden 

7. Stellen Sie auch die URL ein, die verwendet wird, um auf Ihre zuzugreifen Moodle Setzen Sie sich, dies gibt den Ort des wwwroot wo sich Ihre Moodle -Webdateien befinden, und auch die Dataroot (Das Moodledata -Verzeichnis):

$ Cfg-> wwwroot = 'http: // lernen.testProjects.Mich'; $ Cfg-> dataroot = '/var/www/html/stoodledata'; 

Konfigurieren von Nginx, um die Moodle -Website zu servieren

8. In diesem Abschnitt müssen Sie konfigurieren Nginx um deine zu dienen Moodle Anwendung. Sie müssen einen Serverblock dafür in der Nginx -Konfiguration erstellen, wie gezeigt.

# vim/etc/nginx/conf.D/Moodle.Conf 

Kopieren und fügen Sie die folgende Konfiguration in die Server -Block -Konfigurationsdatei ein und fügen Sie sie ein. Ersetze das Servername mit Ihrem Subdomänenname oben erstellt und die fastcgi_pass sollte auf PHP-FPM (Beachten Sie das auf Centos 8, PHP-FPM Akzeptiert Fastcgi Anfragen, die die in der definierte Adresse verwenden /etc/nginx/conf.D/PHP-FPM.Conf Aufbau).

Server Listen 80; Servername Lernen.testProjects.Mich; Wurzel /var/www/html/Moodle; Indexindex.PHP; location / try_files $ uri $ uri / / Index.Php?$ query_string;  Ort ~ ^(.+\.PHP) (.*) $ fastcgi_split_path_info ^(.+\.PHP) (.*) $; FASTCGI_INDEX INDEX.PHP; fastcgi_pass php-fpm; Inhaftieren/etc/nginx/mime.Typen; FASTCGI_PARAMS einschließen; fastcgi_param path_info $ fastcgi_path_info; fastcgi_param script_filename $ document_root $ fastcgi_script_name;  

Speichern Sie die Datei und schließen Sie sie.

9. Dann überprüfen Sie die Nginx Konfiguration für Korrektheit, wenn dies der Fall ist OK, Starten Sie das neu nginx Und PHP-FPM Dienstleistungen zur Anwendung der jüngsten Änderungen:

# nginx -t # systemctl restart nginx # systemctl restart PHP -FPM neu starten 

10. Wenn Sie haben Selinux Aktiviert in Ihrem System und führen Sie die folgenden Befehle aus, um den richtigen Kontext für den Zugriff auf die Moodle Webdateien auf dem Server:

# setSbool -p httpd_can_network_connect auf # chcon -r --type httpd_sys_rw_content_t/var/www/html 

11. Außerdem stellen Sie sicher, dass die Http Und Https Die Dienste sind in der Firewall geöffnet, um den Verkehr an die zu ermöglichen Nginx Webserver:

# Firewall-CMD --permanent --zone = public --add-service = http # Firewall-cmd --permanent --zone = public --add-service = https # Firewall-CMD--Reload 

Vervollständigen Sie die Moodle -Installation über das Webinstallateur

12. Zugreifen auf die Moodle Webinstallateur, öffnen Sie Ihren Webbrowser und navigieren Sie mit dem Subdomain Sie haben oben erstellt:

http: // lernen.testProjects.Mich 

Sobald die Begrüßungsseite geladen wird, lesen Sie die Bedingungen und Bedingungen durch und klicken Sie auf Weitermachen.

Moodle Web Installer

13. Als nächstes prüft der Webinstallateur, ob Ihr System die Anforderungen für das Ausführen von a erfüllt Moodle Site der angegebenen Version. Sie können nach unten scrollen, um weitere Informationen anzuzeigen.

Moodle Server -Anforderungen überprüfen

14. Der Installateur beschwert sich darüber Https Nicht aktiviert werden, ignorieren Sie diesen Fehler vorerst (im nächsten Abschnitt werden wir zeigen, wie HTTPS auf Moodle aktiviert werden kann) und klicken Weitermachen, So starten Sie die tatsächliche Installation der Webdateien.

Moodle HTTPS -Fehler

15. Jetzt startet der Installationsprogramm die tatsächliche Installation der Moodle Dateien wie im folgenden Screenshot gezeigt. Sobald es abgeschlossen ist, klicken Sie auf Weitermachen.

Moodle -Installation

16. Im nächsten Schritt müssen Sie Ihre aktualisieren Moodle Das Administratorkonto der Site, indem Sie den Benutzernamen, das Passwort, den Vornamen und den Nachnamen sowie die E -Mail -Adresse aktualisieren. Scrollen Sie dann die Seite nach unten und klicken Sie auf Profil aktualisieren.

Moodle Site Details

17. Aktualisieren Sie dann die Einstellungen der Moodle Site Frontage. Scrollen Sie dann nach unten und klicken Sie auf Aktualisieren Um Ihre Moodle -Site zu nutzen.

Moodle -Startseite Einstellungen

18. Als nächstes müssen Sie Ihre Website registrieren, indem Sie den Anweisungen auf dem Bildschirm folgen. Sie können zum Dashboard gehen, indem Sie auf das Dashboard klicken.

Moodle Web Installation vollständig

Einrichten von HTTPS auf der Moodle -Site mit Let's Encrypt

Https Fügt Ihrer Website die erste Sicherheitsebene hinzu, um eine sichere Kommunikation zwischen Ihren Benutzern und den zu ermöglichen Moodle Anwendung (insbesondere die Nginx Webserver, der Anfragen empfängt und Antworten liefert).

Sie können entweder ein SSL/TLS Lassen Sie uns verschlüsseln Das ist frei und erkannt von allen modernen Webbrowsern. Für diesen Leitfaden werden wir verwenden Lassen Sie uns verschlüsseln.

19. Der Lassen Sie uns verschlüsseln Die Zertifikatbereitstellung wird automatisch mit dem verwaltet certbot Werkzeug. Sie können installieren certbot und andere erforderliche Pakete mit dem folgenden Befehl:

# DNF Install Certbot Python3-CertBot-Nginx 

20. Führen Sie dann den folgenden Befehl aus, um eine zu erhalten Lassen Sie uns verschlüsseln Zertifikat und certbot bearbeiten Sie Ihre Nginx Konfiguration automatisch zum Servieren (sie konfiguriert auch Http automatisch umgeleitet werden zu Https).

# certbot -nginx 
Aktivieren Sie HTTPS auf Moodle

21. Führen Sie dann den folgenden Befehl aus, um eine automatische Erneuerung der zu ermöglichen Lassen Sie uns SSL/TLS verschlüsseln Zertifikat:

# echo "0 0,12 * * * root python3 -c 'Import Random; Zeit; Zeit; Zeit;.Schlaf (zufällig.random () * 3600) '&& certbot renew -q "| sudo tee -a /etc /crontab> /dev /null 

22. Aktualisieren Sie als Nächstes Ihre Moodle -Konfiguration, um mit der Verwendung zu beginnen Https.

# vim/var/www/html/moodle/config.Php 

ändere das wwwroot URL von Http Zu Https:

$ Cfg-> wwwroot = 'https: // lernen.testProjects.Mich'; 

23. Bestätigen Sie, dass Ihre Moodle Die Seite läuft jetzt weiter Https.

Moodle -Site auf HTTPS läuft

Das war es fürs Erste! Weitere Informationen und Konfigurationsoptionen für Ihre neue Lernplattform finden Sie auf der Moodle -Website und lesen Sie die offizielle Dokumentation durch.