Moodle installieren

Dieses Tutorial zeigt, wie Sie Moodle zum ersten Mal installieren. An manchen Stellen geht es recht weit ins Detail, um die Server-Einstellungen auch zu erklären. Das erscheint mitunter etwas kompliziert. Sie werden aber bald feststellen, dass alles sehr leicht ist. In der Regel ist MOODLE in ein paar Minuten installiert.

Nehmen Sie sich ein wenig Zeit, diese Anleitung sorgfältig zu lesen - es spart Zeit später!

Abschnitte in diesem Dokument:

  1. Systemanforderngen
  2. Download
  3. Verzeichnisstruktur
  4. Ein Datenverzeichnis erstellen
  5. Eine Datenbank erstellen
  6. Die Web-Server Einstellungen überprüfen
  7. Die config.php anpassen
  8. Die Administrationsseite starten
  9. Einen Cron-Job starten
  10. Einen neuen Kurs anlegen

1. Systemanforderungen

Moodle wurde in Linux entwickelt und nutzt PHP, Apache und MySQL. Es wurde getestet mit PostgreSQL unter Windows XP und Mac OS X Umgebungen.

Alles was Sie brauchen ist:

  1. eine funktionierende Installation von PHP (Version 4.1.0 oder jünger), die die folgenden Features einschließt (bei den meisten PHP Installationen ist das heutzutage der Fall)):
    • GD library Mit Unterstützung der JPG und PNG Formate
    • Sessions support
    • Datei uploading erlaubt
  2. einen funktionierenden Datenbankserver: MySQL oder PostgreSQL sind ok. (MSSQL, Oracle, Interbase, Foxpro, Access, ADO, Sybase, DB2 oder ODBC werden theoretisch ebenfalls unterstützt. Sie müssen dann jedoch die Datenbanktabellen manuell einrichten).

Für Windows-Plattformen ist es am einfachsten FoxServ, oder EasyPHP herunterzuladen, die für Sie Apache, PHP, und MySQL installieren. Überprüfen Sie, ob das GD Modul aktiviert ist, damit moodle Bilder verarbeiten kann - evtl. müssen Sie die php.ini bearbeiten und die Kommentare (;) aus der Zeile: 'extension=php_gd.dll' entfernen. Legen Sie weiterhin das Verzeichnis für session.save_path - fest anstelle der Grundeinstellung "/tmp" nutzt Windows ein Verzeichnis wie "c:/temp".

Für Mac OS X empfehle ich das fink Projekt um die entsprechenden Pakete herunterzuladen. Wenn Sie mit den erforderlichen Einstellungen nicht so vertraut sind, finden Sie einen einfachen Weg PHP für einen OS X Server zu installieren bei Marc Liyanage's PHP Apache Module.

Wenn Sie unter Linux oder Unix arbeiten, vermute ich, dass Sie all dies selber einrichten können! ;-)

 

2. Download

Moodle liegt als komprimiertes Paket oder über CVS für Sie bereit. Detailerklärungen finden Sie auf der Downloadseite http://moodle.org/

Nach dem Download packen Sie das Archiv oder die CVS Dateien aus. Im neuen Verzeichnis quot;moodle" finden Sie eine Reihe von Dateien und Ordnern..

Sie können den gesamten Ordner in ein Dokumentenverzeichnis ihres Webservers kopieren, dann finden Sie Moodle unter folgender Adresse http://yourwebserver.com/moodle, oder Sie kopieren alles direkt in das Hauptverzeichnis. Moodle finden Sie dann unter http://yourwebserver.com.

 

3. Verzeichnisstruktur

Verschaffen Sie sich ruhig einen Überblick über die verschiedenen Verzeichnisse von Moodle und ihren Inhalt:

config.php - Dies ist die einzige Datei, die Sie vor dem Start noch bearbeiten müssen
version.php - beschreibt die gerade installierte Version von Moodle
index.php - die Startseite

 

4. Ein Datenverzeichnis erstellen

Moodle braucht nun etwas Speicherplatz für hochgeladene Dateien wie Kursdokumente und Nutzerbilder.

Erstellen Sie an einer beliebigen Stelle auf Ihrem Server für diesen Zweck ein Verzeichnis. Aus Sicherheitsgründen sollte dierses Verzeichnis NICHT für jedermann direkt übers Web zugreifbar sein. Am besten richten Sie es ausserhalb des Programmverzeichnisses ein, oder Sie schützen es mit Hilfe einer .htaccess-Datei mit folgendem Inhalt:

deny from all

Prüfen Sie ob Moodle in diesem Vezeichnis Dateien ablegen darf, indem Sie überprüfen, ob die WebServer Software (z.B. Apache) für dieses Verzeichnis Schreiberlaubnis hat. Auf Unix-Rechnern lautet die Einstellung für das Verzeichnis "nobody" oder "apache".


Wenn Sie einen gemieteten Server nutzen, der von mehreren Nutzern in Anspruch genommen werden, sollten Sie darauf achten, das nicht alle anderen Nutzer auf Ihre Daten zugreifen können. Wenn Sie sich nicht sicher sind, wenden Sie sich an den Administrator Ihres Providesr.

 

5. Eine Datenbank erstellen

Erstellen Sie nun eine leere Datenbank (z.B. "moodle") in Ihrem Datenbanksystem mit dem Nutzer (z.B. "moodleuser") der auf diese Datenbank zugreifen kann. Richten Sie in jedem Falle ein Passwort ein, wenn Sie einen Online-Server nutzen, damit niemand anderer auf Ihre Datenbank zugreifen kann.

Aufruf für MySQL (Beispiel):

   # mysql -u root -p
   > CREATE DATABASE moodle;
   > GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON moodle.*
           TO moodleuser@localhost IDENTIFIED BY 'yourpassword';
   > quit
   # mysqladmin -p reload

Aufruf für PostgreSQL (Beispiel):

   # su - postgres
   > psql -c "create user moodleuser createdb;" template1
   > psql -c "create database moodle;" -U moodleuser template1
   > psql -c "alter user moodleuser nocreatedb;" template1

(Für MySQL empfehle ich den Gebrauch von phpMyAdmin zur Bearbeitung der Datenbank).

Ab der Version 1.0.8 unterstützt Moodle Vorzeichen für die Datenbanktabellen. Dadurch können Sie die gleiche Datenbank mit mehreren Moodle-Installationen oder anderen Webanwendungen nutzen.

 

6. Die Web-Server Einstellungen überprüfen

Stellen Sie zunächst sicher, dass Ihr Webserver automatisch die Index.php Datei aufruft (evtl ergänzend zur index.html, default.htm etc).

In Apache erfolgt diese Einstellung in der httpd.conf Datei. Darin sollte z.B. folgender Text stehen:

DirectoryIndex index.php index.html index.htm 

index.php muß in dieser Übersicht aufgeführt sein. Am besten steht es sogar ganz am Anfang der Liste.

Dann erfordert Moodle einige PHP-Einstellungen, damit es arbeiten kann. Zumeist sind diese bereits als Grundeinstellungen vorhanden. Einige PHP-Server (besonders solche mit älteren Versionen) müssen entsprechend eingestellt werden. Sie finden die Einstellungen in der PHP-Konfigurationsdatei (php.ini):

magic_quotes_gpc = On
magic_quotes_runtime = Off
file_uploads = On
short_open_tag = On
session.auto_start = Off
session.bug_compat_warn = Off

Wenn Sie keinen Zugriff auf die Dateien httpd.conf oder php.ini auf Ihrem Server haben, oder wenn andere Anwendungen andere Einstellungen erfordern als Moodle gehen Sie wie folgt vor.

Erstellen Sie eine Datei mit Namen .htaccess im Hauptverzeichnis von Moodle mit der Definition der folgenden Einstellungen. Dies ist jedoch nur bei Apache Servern möglich und auch nur dann wenn Overrides zulässig sind.

DirectoryIndex index.php index.html index.htm
php_value magic_quotes_gpc On
php_value magic_quotes_runtime Off
php_value file_uploads On
php_value short_open_tag On
php_value session.auto_start Off
php_value session.bug_compat_warn Off

Sie können nun auch die maximale Dateigröße festlegen, die hochgeladen werden darf:

php_value upload_max_filesize 2M
php_value post_max_size 2M
     

Am einfachsten kopieren Sie die Beispieldatei aus lib/htaccess und bearbeiten Sie nach Ihren Vorstellungen. Sie finden dort weitere Informationen. Rufen Sie in der Unix Shell folgenden Befehl auf:

cp lib/htaccess .htaccess

 

7. Die config.php anpassen

Nun können Sie die Konfigurationsdatei config.php mit einem einfachen Texteditor bearbeiten. Diese Datei wird von allen anderen Moodle-Dateien genutzt.

Erstellen Sie eine Kopie der Datei config-dist.php und benennen Sie sie mit config.php. Wenn Sie später ein Update von moodle vornehmen wird diese zentrale Datei nicht überschrieben.

Tragen Sie in der config.php die Datenbankangaben und die Präfixe der Tabellen (der Präfix ist bei einer PostgreSQL-Datenbank UNBEDINGT erforderlich), tragen Sie auch die Web-Adresse Ihrer neuen Moodle-Seite, das Verzeichnis der Moodle-Dateien und das Verzeichnis für die Kursdaten in der config.php ein. Weitere Informationen finden Sie in der config.php.

Für die weiteren Beschreibungen gehen wir davon aus, dass Ihre Seite an folgender Stelle liegt: http://example.com/moodle

 

8. Die Administrationsseite starten

Rufen Sie nun die Administrationsseite mit folgendem Befehl auf: http://example.com/moodle/admin. Beim ersten Aufruf der Seite müssen Sie der GPL-Lizenzvereinbarung zustimmen bevor das Setup fortgesetzt wird.

(Moodle wird nun versuchen, einige Cookies auf Ihrem PC zu installieren. Wenn Ihr Browser Sie um Zustimmung zur Installation der Moodle Cookies fragt, müssen Sie dies bestätigen, da andernfalls Moodle nicht von Ihrem Rechner aus genutzt werden kann.)

Moodle richtet nun die Datenbank ein und erstellt die erforderlichen Tabellen in der Datenbank. Zuerst werden die Datenbanktabellen erstellt. Sie sehen auf dem Bildschirm eine Reihe von SQL-Meldungen und Bestätigungsmeldungen in roter oder grüner Schrift. Dies sieht in etwa so aus:

CREATE TABLE course ( id int(10) unsigned NOT NULL auto_increment, category int(10) unsigned NOT NULL default '0', password varchar(50) NOT NULL default '', fullname varchar(254) NOT NULL default '', shortname varchar(15) NOT NULL default '', summary text NOT NULL, format tinyint(4) NOT NULL default '1', teacher varchar(100) NOT NULL default 'Teacher', startdate int(10) unsigned NOT NULL default '0', enddate int(10) unsigned NOT NULL default '0', timemodified int(10) unsigned NOT NULL default '0', PRIMARY KEY (id)) TYPE=MyISAM

SUCCESS

...und so weiter, gefolgt von: Main databases set up successfully.

Wenn Sie dies nicht angezeigt bekommen, besteht ein Problem mit der Datenbank oder den Einstellungen in der Konfigurationsdatei config.php. Prüfen Sie, ob PHP nicht im eingeschränkten "safe mode" läuft (Kommerzielle Webhoster aktivieren häufig den safe mode). Die PHP Variablen können Sie selber mit einer kleinen Datei mit folgendem Inhalt überprüfen: <? phpinfo() ?>. Speichern Sie die Datei in einen Webverzeichnis und rufen Sie sie mit dem Browser auf. Nun können Sie alle Einstellungen von PHP ablesen. Prüfen Sie diese Schritte und und versuchen Sie dann die Admin-Seite erneut aufzurufen.

Scrollen Sie nun bis zum Ende der Seite und drücken Sie den Button "Continue/Weiter" .

Danach sehen Sie eine Reihe von Anzeigen, die das Erstellen der Tabellen für die verschiedenen Module von Moodle bestätigen. Wie zuvor sollten alle Einträge grün sein.

Drücken Sie nun am Fuß der Seite wieder den "Continue/Weiter" Button.

Nun sehen Sie ein Formular mit dem Sie weitere Einstellungen an Ihrem Moodle vornehmen können, wie z.B. die voreingestellte Sprache, SMTP hosts und so weiter. Sie müssen nicht alle Einstellungen sofort vornehmen. Sie können die Einstellungen jederzeit im Administrationsmenu nachbearbeiten. Am Fuß der Seite finden Sie wieder einen Button "Ändern der Einstellungen/Save changes" Button.

Wenn (und wirklich nur dann) das Setup stecken bleibt, dann hat Ihr Server womöglich ein "buggy referrer" Problem. Dieses ist jedoch leicht zu beheben: Setzen Sie in der config.php die Variable buggy_referrer auf true und starten Sie die Adminseite erneut.

Auf der nächsten Seite legen Sie weitere Einstellungen Ihrer Seite fest (z.B. Name der Seite, Formate, Beschreibungen und so weite). Füllen Sie alle Angaben aus (Änderungen können sie jederzeit über das Administrationsmenu vornehmen) und klicken Sie auf "Änderungen bestätigen/Save changes".

Als letzten Schritt legen Sie die Zugangsdaten für den Administrator von Moodle fest. Tragen Sie Ihren eigenen Name, E-Mail etc. ein und klicken Sie auf "Änderungen bestätigen/Save changes". Nicht alle Felder müssen ausgefüllt werden. Falls Sie etwas vergessen haben, werden Sie automatisch daran erinnert.

Stellen Sie unbedingt sicher, dass Sie sich den Benutzernamen und das Passwort für den Administrationszugang merken. Er ist erforderlich für spätere Verwaltungen auf Moodle.

Wenn Sie diesen Schritt erfolgreich abgeschlossen haben, sehen Sie die Administrationsseite. In dem Menu (es wird, wenn Sie sich als Admin einloggen auch auf der Startseite angezeigt) können Sie alle weiteren Einstellungen an Ihrem Moodle vornehmen wie z.B.:

 

9. Einen Cron-Job starten

Einige Module von Moodle prüfen regelmäßig, ob bestimmte Aufgaben ausgeführt werden müssen. Moodle überprüft z.B. ob es im Forum neue Einträge gibt, die per Email an Nutzer versandt werden müssen.

Das Skript, das all diese Vorgänge steuert, finden Sie im Admin-Verzeichnis und heißt cron.php. Diese Datei läuft nicht von alleine. Sie müssen einen Mechanismus einrichten, der die Datei z.B. alle fünf Minuten ausführt. Dazu ist es erforderlich, dass ein "Impuls" für jedes Modul ausgelöst wird.

Der Auslöser dieses Impulses muß nicht von dem Server erfolgen auf dem Moodle installiert ist.. Wenn Sie auf diesem Server keine Cron-Jobs ausführen können, kann dies von einem anderen Server ausgelöst oder von Ihrem PC gestartet werden. Es ist lediglich nötig, die Datei cron.php alle fünf Minuten aufzurufen.

Testen Sie zuerst, ob die Datei funktioniert. Rufen Sie sie mit Ihrem Browser auf:

http://example.com/moodle/admin/cron.php

Nehmen Sie nun einige Einstellungen vor:

Aufruf des Skripts von der Kommandozeile

Rufen Sie die Datei wie zuvor auf. Nehmen Sie dazu z.B. den Unix-Befehl 'wget':

wget -q -O /dev/null http://example.com/moodle/admin/cron.php

In diesem Beispiel wird das Ergebnis abgelegt (nach /dev/null).

Das gleiche mit lynx:

lynx -dump http://example.com/moodle/admin/cron.php > /dev/null

Alternativ können Sie eine separate PHP-Version nutzen, die über die Kommandozeile gesteuert wird. Der Vorteil dieser Variante ist, dass in den Log-Dateien des Web-Servers der Aufruf von cron.php nicht ständig protokolliert wird. Der Nachteil dieser Variante besteht darin, dass Sie einen Zugang zur Kommando-Zeile der PHP-Version benötigen.

/opt/bin/php /web/moodle/admin/cron.php


(Windows) C:\apache\php\php.exe C:\apache\htdocs\moodle\admin\cron.php

Automatische Ausführung des Skripts alle 5 Minuten

Bei UNIX- Systemen: Use cron. Passen Sie ihre Einstellungen für Cron- Jobs über die Komandozeile mit folgendem Befehl an "crontab -e" und fügen Sie folgende Zeile hinzu:

*/5 * * * * wget -q -O /dev/null http://example.com/moodle/admin/cron.php

Bei Windows-Systemen: Der einfachste Weg ist hier mein Programm zu benutzen, moodle-cron-for-windows.zip wodurch die Anpassungen ganz einfach sind. Sie können alternativ dazu, die in Windows enthaltene Funktion "Scheduled Tasks" benutzen.

10. Einen neuen Kurs anlegen

Wenn alle Einstellungen vorgenommen wurden, sollte diese Moodle-Seite einsatzfähig sein und Sie können einen Kurs erstellen.

Wählen Sie "Neuen Kurs anlegen" auf der Administrationsseite ( oder über den Link im Administrationsmenü auf der Hauptseite).

Legen Sie die Grundeinstellungen fest. Achten Sie dabei bitte besonders auf das Kursformat. Sie brauchen sich in dieser Stufe nicht zu intensiv mit den Details zu beschäftigen, da alle diese Einstellungen später durch den Trainer geändert werden können.

Über den Button "Änderungen speichern", gelangen sie auf eine neue Seite. Auf dieser Seite können Sie den Trainer für diesen Kurs zuweisen. Sie können nur Teilnehmer als Trainer zuweisen, die bereits einen Zugang zu diesem Moodle- System besitzen. Wenn ein neuer Trainerzugang eingerichtet werden soll, bitten Sie den Trainer sich selbst einen Zugang einzurichten ( Über die Anmeldeseite) oder erzeugen Sie einen neuen Zugang über das Administrationsmenü. Dort finden Sie den Link "Neuen Benutzer anlegen ".

Wenn dies erledigt ist, sind die Vorbereitungen abgeschlossen und der Kurs kann über den Link "Kurse" auf der Hauptseite weiter bearbeitet werden.

Lesen Sie das "Trainer Handbuch", um weitere Informationen zur Erstellung eines Kurses zu erhalten. Eine ausführliche Anleitung in deutscher Sprache finden Sie im Deutschen Trainerhandbuch und im Teilnehmerhandbuch Forum.

 

Moodle Dokumentation

Version: $Id$