Das Open-Source-Lern­ma­nage­ment­sys­tem Moodle wird von Schulen, Uni­ver­si­tä­ten und Un­ter­neh­men ein­ge­setzt. In Kom­bi­na­ti­on mit Plesk lässt sich Moodle besonders kom­for­ta­bel in­stal­lie­ren und verwalten. Diese Anleitung zeigt Ihnen Schritt für Schritt, wie Sie Ihre eigene Moodle-Plattform aufsetzen.

Schritt 1: Vor­aus­set­zun­gen und passende In­fra­struk­tur

Bevor Sie mit der In­stal­la­ti­on beginnen, benötigen Sie eine geeignete Ser­ver­um­ge­bung sowie einige grund­le­gen­de Vor­aus­set­zun­gen:

  • in­stal­lier­te Plesk-Umgebung
  • Domain
  • Zugriff auf die Plesk-Ober­flä­che
  • stabile Server- und Netz­werk­ver­bin­dung
  • ein­ge­rich­te­ter Webserver
  • PHP
  • Datenbank

Plesk übernimmt viele ad­mi­nis­tra­ti­ve Aufgaben während der Moodle-In­stal­la­ti­on, dennoch sollte die zugrunde liegende In­fra­struk­tur zu Ihrem An­wen­dungs­fall passen. Gerade bei Moodle ist die richtige Ser­ver­di­men­sio­nie­rung ent­schei­dend, da Per­for­mance und Sta­bi­li­tät stark von der Anzahl der Nut­ze­rin­nen und Nutzer sowie der Kurse abhängen. Im Folgenden erhalten Sie eine Übersicht typischer Ein­satz­sze­na­ri­en und passender Ser­ver­kon­fi­gu­ra­tio­nen.

Moodle für Lehr­kräf­te und kleine Kurse

Wenn Sie Moodle als einzelne Lehrkraft oder für kleinere Lern­grup­pen einsetzen, sind die An­for­de­run­gen ver­gleichs­wei­se gering. In diesem Fall reicht ein kleiner vir­tu­el­ler Server mit wenigen CPU-Kernen und moderatem Ar­beits­spei­cher aus. Wichtig ist vor allem eine stabile In­ter­net­ver­bin­dung und aus­rei­chend Spei­cher­platz für Kurs­ma­te­ria­li­en. Die In­stal­la­ti­on und Ver­wal­tung bleiben über­schau­bar, sodass Sie Moodle auch ohne tief­ge­hen­de Ser­ver­kennt­nis­se betreiben können. Besonders für erste Tests oder Pi­lot­pro­jek­te ist dieses Setup ideal geeignet.

Moodle für Schulen und Wei­ter­bil­dungs­ein­rich­tun­gen

In Schulen oder Bil­dungs­ein­rich­tun­gen greifen häufig viele Nut­ze­rin­nen und Nutzer gleich­zei­tig auf die Plattform zu. Dadurch steigen die An­for­de­run­gen an CPU und Ar­beits­spei­cher deutlich. Ein mit­tel­gro­ßer Server sorgt hier für eine stabile Per­for­mance, auch bei par­al­le­len Zugriffen während Un­ter­richts­zei­ten. Zu­sätz­lich sollten Sie re­gel­mä­ßi­ge Backups einplanen, um Da­ten­ver­lus­te zu vermeiden. Auch die Ver­wal­tung mehrerer Kurse und Nut­zer­grup­pen spielt hier eine wichtige Rolle.

Moodle für kleine und mittlere Un­ter­neh­men

Auch Un­ter­neh­men nutzen Moodle in einigen Fällen für interne Schu­lun­gen, On­boar­ding-Prozesse oder Wei­ter­bil­dun­gen. Hier ist eine zu­ver­läs­si­ge und per­for­man­te Umgebung besonders wichtig. Ein leis­tungs­stär­ke­rer Server mit 6 vCores und min­des­tens 8 GB RAM stellt sicher, dass auch bei mehreren par­al­le­len Kursen alles rei­bungs­los läuft. Zudem sollten Si­cher­heits­aspek­te wie HTTPS und Be­nut­zer­ver­wal­tung be­rück­sich­tigt werden. Eine saubere Struk­tu­rie­rung der Kurse er­leich­tert die lang­fris­ti­ge Nutzung.

Moodle für große Or­ga­ni­sa­tio­nen

Große Un­ter­neh­men oder Or­ga­ni­sa­tio­nen benötigen eine ska­lier­ba­re und leis­tungs­fä­hi­ge In­fra­struk­tur. Hier kommen Server mit vielen CPU-Kernen und viel RAM zum Einsatz. Zu­sätz­lich können Caching-Me­cha­nis­men und Load-Balancing sinnvoll sein. Auch Mo­ni­to­ring und au­to­ma­ti­sier­te Backups gewinnen an Bedeutung. Dieses Setup richtet sich vor allem an pro­fes­sio­nel­le IT-Um­ge­bun­gen mit ent­spre­chen­dem Know-how.

Über­blick­s­ta­bel­le: An­wen­dungs­fäl­le und emp­foh­le­ne Res­sour­cen

An­wen­dungs­ge­biet Typischer Einsatz Emp­foh­le­ne Res­sour­cen Be­son­der­hei­ten
Einzelne Lehrkraft / kleine Kurse Kleine Lern­platt­form mit wenigen Teil­neh­men­den 2 vCores CPU, 4 GB RAM, 80–120 GB NVMe Geringe Last, einfache Ver­wal­tung
Schulen und Wei­ter­bil­dung Mehrere Klassen, re­gel­mä­ßi­ge Nutzung 4 vCores CPU, 4–8 GB RAM, 120–160 GB NVMe Gleich­zei­ti­ge Zugriffe beachten
KMU Interne Schu­lun­gen, mehrere Kurse 6 vCores CPU, 8 GB RAM, 200–240 GB NVMe Sta­bi­li­tät und Backups wichtig
Große Un­ter­neh­men Viele User, ska­lie­ren­de Plattform 8+ vCores CPU, 16+ GB RAM, 300+ GB NVMe Per­for­mance, Caching, Ska­lie­rung
Free VPS Trial
vServer kostenlos testen für 30 Tage

Lassen Sie sich von den Vorteilen über­zeu­gen. Probieren Sie Ihren Virtual Server ganz in Ruhe 30 Tage lang aus!

Schritt 2: Domain und Hosting in Plesk ein­rich­ten

Melden Sie sich in Ihrer Plesk-Ober­flä­che an und öffnen Sie den Bereich „Domains“. Klicken Sie an­schlie­ßend auf „Add Domain“ und tragen Sie Ihre ge­wünsch­te Domain ein. Be­stä­ti­gen Sie die Eingabe, damit die Domain angelegt wird.

Bild: Plesk: Domain hinzufügen
Bei Plesk fügen Sie eine Domain einfach durch einen Klick auf „Add Domain“ hinzu.

Schritt 3: Datenbank erstellen

Moodle benötigt eine Datenbank, um sämtliche Inhalte wie Kurse, Nut­zer­kon­ten, Fort­schrit­te und Ein­stel­lun­gen zu speichern. Ohne korrekt ein­ge­rich­te­te Datenbank kann die Anwendung nicht betrieben werden. Richten Sie daher nun Ihre Datenbank ein. Klicken Sie hierzu in Ihrer Plesk-Ober­flä­che auf Ihre Domain, öffnen Sie den Punkt „Databases“ und klicken Sie dann auf „Add Database“.

Bild: Plesk: Datenbank anlegen
In den Ein­stel­lun­gen Ihrer Domain können Sie bei Plesk eine Datenbank anlegen.

An­schlie­ßend geben Sie die er­for­der­li­chen In­for­ma­tio­nen ein:

  • Da­ten­bank­na­me: moodle
  • Da­ten­bank­be­nut­zer: moodle_user
  • Passwort: starkes_passwort

Achten Sie darauf, ein sicheres Passwort zu wählen, das aus einer Kom­bi­na­ti­on von Groß- und Klein­buch­sta­ben, Zahlen und Son­der­zei­chen besteht. Dies ist besonders wichtig, da die Datenbank sensible In­for­ma­tio­nen enthält.

Bild: Plesk: Datenbank konfigurieren
Legen Sie Ihre Moodle-Datenbank an, indem Sie Namen, User und Passwort festlegen.

Nach dem Anlegen der Datenbank erstellt Plesk au­to­ma­tisch den passenden Da­ten­bankus­er und verknüpft ihn mit der Datenbank. Moodle un­ter­stützt mehrere Da­ten­bank­sys­te­me, darunter MySQL, MariaDB, Post­greS­QL und Microsoft SQL Server. In Plesk werden in der Praxis meist MySQL oder MariaDB verwendet. Für Moodle 5.2 gelten dabei bestimmte Min­dest­ver­sio­nen:

  • MariaDB ab 10.11.0
  • MySQL ab 8.4
  • Post­greS­QL ab 16
  • Microsoft SQL Server ab 2019

Notieren Sie sich die Zu­gangs­da­ten, da Sie diese im späteren In­stal­la­ti­ons­pro­zess von Moodle erneut eingeben müssen. Ohne diese Angaben kann die Ver­bin­dung zur Datenbank nicht her­ge­stellt werden.

Schritt 4: PHP-Version und Ein­stel­lun­gen prüfen

Moodle basiert auf PHP und stellt bestimmte An­for­de­run­gen an die ver­wen­de­te Version sowie an zentrale PHP-Ein­stel­lun­gen. Eine korrekt kon­fi­gu­rier­te PHP-Umgebung ist ent­schei­dend für die Sta­bi­li­tät und Per­for­mance Ihrer Plattform. Klicken Sie in Plesk auf Ihre Domain und wählen Sie an­schlie­ßend „PHP“ unter den Dev-Tools.

Bild: Plesk: PHP-Einstellungen aufrufen
Mit einem Klick auf „PHP“ gelangen Sie in die PHP-Ein­stel­lun­gen.

Dort können Sie die be­nö­tig­ten Parameter über­prü­fen und ge­ge­be­nen­falls direkt anpassen. Sichern Sie Ihre Än­de­run­gen mit einem Klick auf „Apply“.

Achten Sie ins­be­son­de­re auf folgende Werte:

  • PHP-Version: min­des­tens 8.2 für Moodle 5.0 bzw. min­des­tens 8.3 ab Moodle 5.2
  • memory_limit: min­des­tens 256M, besser 512M bei größeren In­stal­la­tio­nen
  • max_execution_time: min­des­tens 300 Sekunden (empfohlen), um Abbrüche bei längeren Prozessen zu vermeiden
  • max_input_vars: min­des­tens 5000 (wichtig für Formulare)
Bild: Plesk: PHP-Einstellungen anpassen
Achten Sie darauf, die PHP-Parameter ent­spre­chend an­zu­pas­sen; dies geht einfach über die grafische Ober­flä­che bei Plesk.

Diese Ein­stel­lun­gen sind wichtig, da Moodle bei der In­stal­la­ti­on, bei Updates oder beim Import von Kurs­in­hal­ten teilweise mehr Res­sour­cen benötigt. Ein zu niedriges Memory-Limit oder eine zu kurze Aus­füh­rungs­zeit kann dazu führen, dass Prozesse fehl­schla­gen oder Seiten nicht korrekt geladen werden. In Plesk können Sie die Werte direkt über die Ein­ga­be­fel­der ändern und an­schlie­ßend speichern. Die Än­de­run­gen werden in der Regel sofort wirksam, sodass Sie direkt mit der In­stal­la­ti­on fort­fah­ren können.

Über­prü­fen Sie außerdem die er­for­der­li­chen PHP-Er­wei­te­run­gen, da Moodle für den Betrieb mehrere Module vor­aus­setzt. Dazu gehören unter anderem curl, fileinfo, gd, intl, mbstring, mysqli oder pgsql, openssl, soap, sodium sowie opcache; ins­be­son­de­re sodium ist seit Moodle 4.2 ver­pflich­tend.

In Plesk können Sie die ak­ti­vier­ten Er­wei­te­run­gen direkt prüfen und anpassen: Öffnen Sie dazu Ihre Domain und dann die PHP-Ein­stel­lun­gen. Klicken Sie auf „View the phpinfo() page“. Hier finden Sie alle ak­ti­vier­ten Er­wei­te­run­gen.

Bild: Plesk: „View the phpinfo()“-Seite
Mit einem Klick auf „View the phpinfo() page“ leitet Plesk Sie direkt zur phpinfo()-Steie weiter.

Al­ter­na­tiv können Sie per SSH auf dem Server prüfen, welche Er­wei­te­run­gen aktiv sind, indem Sie folgenden Befehl ausführen:

php -m
bash

Fehlende Er­wei­te­run­gen müssen je nach Ser­ver­um­ge­bung nach­in­stal­liert und an­schlie­ßend im Webserver bzw. in Plesk aktiviert werden.

Schritt 5: Moodle her­un­ter­la­den und hochladen

Laden Sie zunächst die aktuelle Moodle-Version von der of­fi­zi­el­len Website herunter. Achten Sie darauf, eine stabile Version zu verwenden, die zu Ihrer PHP-Version passt. Über Ihren SSH-Zugriff können Sie Moodle direkt auf dem Server her­un­ter­la­den und entpacken. Wechseln Sie dazu in das Web­ver­zeich­nis Ihrer Domain und führen Sie die folgenden Befehle aus:

cd /var/www/vhosts/IHRE-DOMAIN/httpdocs
wget https://download.moodle.org/download.php/direct/stable502/moodle-latest-502.tgz
tar -xvzf moodle-latest-502.tgz
rm moodle-latest-502.tgz
bash
Tipp

Laden Sie Moodle stets von der of­fi­zi­el­len Website herunter und verwenden Sie für den pro­duk­ti­ven Einsatz eine konkret ver­sio­nier­te, stabile Release-Version statt eines be­weg­li­chen Ziels wie latest.zip. So stellen Sie sicher, dass Ihre In­stal­la­ti­on re­pro­du­zier­bar bleibt und Sie jederzeit nach­voll­zie­hen können, welche Moodle-Version ein­ge­setzt wird.

Nach dem Entpacken befindet sich Moodle in einem Un­ter­ord­ner namens moodle.

Nun müssen Sie den Do­ku­men­ten­stamm setzen. Klicken Sie hierzu in Plesk auf Ihre Domain und dort auf den Bereich „Hosting & DNS“. Hier klicken Sie die Ein­stel­lung „Hosting“ an, wo Sie den Do­ku­men­ten­stamm ändern können. Setzen Sie ihn auf:

/httpdocs/moodle/public
Bild: Plesk: Hosting-Einstellungen aufrufen
Die Hosting-Ein­stel­lun­gen finden Sie bei Ihrer Domain.
Bild: Plesk: Dokumentenstamm ändern
In den Hosting-Ein­stel­lun­gen können Sie bei Plesk unter anderem den Do­ku­men­ten­stamm verändern und ent­spre­chend auf „httpdocs/moodle/public“ setzen.
Hinweis

Seit Moodle 5.1 nutzt Moodle eine neue Ver­zeich­nis­struk­tur mit einem separaten public-Ordner für öf­fent­lich er­reich­ba­re Dateien. Wenn Sie Moodle 5.1 oder neuer in­stal­lie­ren, setzen Sie den Do­ku­men­ten­stamm in Plesk daher wie be­schrie­ben auf /httpdocs/moodle/public. Bei älteren Moodle-Versionen vor 5.1 kann der Do­ku­men­ten­stamm je nach In­stal­la­ti­ons­art noch direkt auf den Moodle-Ordner zeigen.

Schritt 6: Da­tei­rech­te setzen

Damit Moodle korrekt funk­tio­niert, müssen die Dateien und Ver­zeich­nis­se die richtigen Zu­griffs­rech­te besitzen. Diese legen fest, welcher User Dateien lesen, ändern oder ausführen darf. Falsche Be­rech­ti­gun­gen führen häufig zu In­stal­la­ti­ons­feh­lern oder Problemen im laufenden Betrieb.

In Plesk wird jede Domain mit einem eigenen Sys­tem­be­nut­zer betrieben. Stellen Sie sicher, dass die Moodle-Dateien diesem User gehören.

chown -R IHRE-SYSTEMBENUTZER:psacln /var/www/vhosts/IHRE-DOMAIN/httpdocs
bash

An­schlie­ßend vergeben Sie sinnvolle Stan­dard­rech­te für Dateien und Ver­zeich­nis­se:

find /var/www/vhosts/IHRE-DOMAIN/httpdocs -type d -exec chmod 755 {} \;
find /var/www/vhosts/IHRE-DOMAIN/httpdocs -type f -exec chmod 644 {} \;
bash

Diese Ein­stel­lun­gen sorgen dafür, dass Ver­zeich­nis­se betreten werden können und Dateien lesbar sind, während Schreib­rech­te ein­ge­schränkt bleiben. Dies ist ein wichtiger Si­cher­heits­aspekt.

Zu­sätz­lich benötigt Moodle ein separates Da­ten­ver­zeich­nis, in dem bei­spiels­wei­se hoch­ge­la­de­ne Dateien, Kurs­in­hal­te und temporäre Daten ge­spei­chert werden. Dieses Ver­zeich­nis sollte außerhalb des Webroots liegen, damit es nicht direkt über den Browser er­reich­bar ist. Erstellen Sie das Ver­zeich­nis wie folgt:

mkdir /var/www/vhosts/IHRE-DOMAIN/moodledata
chown -R IHRE-SYSTEMBENUTZER:psacln /var/www/vhosts/IHRE-DOMAIN/moodledata
chmod -R 770 /var/www/vhosts/IHRE-DOMAIN/moodledata
bash

Das Da­ten­ver­zeich­nis muss für den Webserver be­schreib­bar sein, da Moodle hier Inhalte speichert.

Hinweis

Der Moodle-Code selbst sollte nicht dauerhaft für den Webserver schreib­bar sein. Schreib­rech­te sind nur für das Da­ten­ver­zeich­nis er­for­der­lich. In Plesk können Sie die Be­rech­ti­gun­gen al­ter­na­tiv auch über den Da­tei­ma­na­ger anpassen.

Schritt 7: Moodle im Browser in­stal­lie­ren

Nachdem Sie alle Vor­be­rei­tun­gen ab­ge­schlos­sen haben, können Sie die ei­gent­li­che In­stal­la­ti­on starten. Öffnen Sie dazu Ihren Browser und rufen Sie Ihre Domain auf:

http://IHRE-DOMAIN

Sobald Sie die Seite öffnen, startet au­to­ma­tisch der Moodle-In­stal­la­ti­ons­as­sis­tent. Dieser führt Sie Schritt für Schritt durch die Ein­rich­tung und ist auch für Ein­stei­ge­rin­nen und Ein­stei­ger gut ver­ständ­lich.

Bild: Moodle: Installationsassistent
Wenn Sie im Browser Ihre Domain aufrufen, sehen Sie nun den In­stal­la­ti­ons­as­sis­ten­ten von Moodle, der Sie durch die Ein­rich­tung führt.

Nachdem Sie alle Angaben gemacht haben, richtet Moodle au­to­ma­tisch die be­nö­tig­ten Da­ten­bank­ta­bel­len ein und in­stal­liert alle not­wen­di­gen Kom­po­nen­ten. Dieser Vorgang kann je nach Ser­ver­leis­tung einige Minuten dauern.

Schritt 8: Cron-Job ein­rich­ten

Moodle benötigt einen re­gel­mä­ßig aus­ge­führ­ten Cron-Job, um Hin­ter­grund­auf­ga­ben wie E-Mail-Versand, Backups, Kurs­ak­tua­li­sie­run­gen und Be­rei­ni­gun­gen durch­zu­füh­ren. Ohne korrekt ein­ge­rich­te­ten Cron-Job funk­tio­niert die Plattform nicht zu­ver­läs­sig. Der Cron-Job sollte idea­ler­wei­se einmal pro Minute aus­ge­führt werden.

Öffnen Sie dafür in Ihrer Plesk-Ober­flä­che den Bereich „Scheduled Tasks“ Ihrer Domain. Klicken Sie an­schlie­ßend auf „Add Task“ und wählen Sie die Option „Run a PHP script“.

Tragen Sie den folgenden Wert ein (IHRE-DOMAIN durch die jeweilige Domain ersetzen):

  • Datei: /var/www/vhosts/IHRE-DOMAIN/httpdocs/moodle/admin/cli/cron.php
Bild: Plesk: Cron-Job einrichten
Moodle benötigt einen Cron-Job, den Sie bei Plesk einfach ein­rich­ten können. Achten Sie darauf, eine in­di­vi­du­el­le Cron-Syntax zu de­fi­nie­ren, damit die Aus­füh­rung minütlich erfolgt.

Al­ter­na­tiv können Sie auch die Option „Run a command“ mit folgendem Befehl verwenden:

/opt/plesk/php/IHRE-PHP-VERSION/bin/php /var/www/vhosts/IHRE-DOMAIN/httpdocs/moodle/admin/cli/cron.php

Ersetzen Sie IHRE-PHP-VERSION durch die in Plesk ein­ge­stell­te Version und IHRE-DOMAIN durch die jeweilige Domain.

Hinweis

Der Cron-Job ist ein zentraler Be­stand­teil von Moodle. Wenn er nicht re­gel­mä­ßig aus­ge­führt wird, können Funk­tio­nen wie E-Mail-Be­nach­rich­ti­gun­gen, Kurs­ab­schlüs­se oder au­to­ma­ti­sche Backups nicht korrekt funk­tio­nie­ren.

Schritt 9: HTTPS ak­ti­vie­ren

Für den pro­duk­ti­ven Einsatz sollten Sie Ihre Moodle-Plattform unbedingt absichern. Ohne HTTPS werden Daten un­ver­schlüs­selt über­tra­gen, was ins­be­son­de­re bei Login-Daten ein Si­cher­heits­ri­si­ko darstellt. In Plesk können Sie hierzu ganz einfach ein kos­ten­lo­ses SSL-Zer­ti­fi­kat ein­rich­ten. Na­vi­gie­ren Sie dazu zu Ihrer Domain → „SSL/TLS-Cer­ti­fi­ca­tes“ und scrollen Sie nach unten zur Option „Let’s Encrypt“.

Bild: Plesk: Let’s Encrypt
Ein Let’s Encrypt-Zer­ti­fi­kat kann bei Plesk kostenlos in­stal­liert werden.

Ak­ti­vie­ren Sie an­schlie­ßend die folgenden Optionen:

  • Wei­ter­lei­tung auf HTTPS, damit alle Be­su­che­rin­nen und Besucher au­to­ma­tisch die sichere Ver­bin­dung nutzen
  • SSL-Schutz, um die Da­ten­über­tra­gung zu ver­schlüs­seln

Nach der Ak­ti­vie­rung ist Ihre Plattform direkt über https://IHRE-DOMAIN er­reich­bar.

Tipp

Für einen sicheren und pro­fes­sio­nel­len Betrieb sollten Sie Moodle immer über HTTPS betreiben. Zu­sätz­lich empfiehlt es sich, re­gel­mä­ßi­ge Backups ein­zu­rich­ten und Updates zeitnah ein­zu­spie­len. Gerade bei sensiblen Nut­zer­da­ten ist ein zu­ver­läs­si­ger Schutz un­er­läss­lich. Nutzen Sie außerdem starke Pass­wör­ter und be­schrän­ken Sie Admin-Zugriffe auf das Nötigste.

Zum Hauptmenü