## 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 erstellene
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 ads 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 werde theretisch 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 oodle 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. Wen 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 elber 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.com/

> 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

> > - admin/ - verwaltet die gesamte Anwendung
> > - auth/ - Plugin Module um Anwender zu identifizieren
> > - course/ - Anzeige und Verwaltung der Kurse
> > - doc/ - Hilfedateien für Moodle (z.B. diese Seite)
> > - files/ - Anzeige und Verwaltung hochgeladener Dateien
> > - lang/ - Texte in verschiedenen Sprachen
> > - lib/ - Bibliotheken des Kerns von Moodle
> > - login/ - Steuerung des Login und der Anmeldungen
> > - mod/ - alle Moodle Kursmodule
> > - pix/ - Grafische Gestaltung der Seiten
> > - theme/ - Vorlagen für die visuelle Gestaltung der Seiten (Themes/Skins).
> > - user/ - Anzeige und Verwaltung von Benutzern

### 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 Dtaeien ablegen darf, indem Sie überprüfen, ob die WebServer Software (z.B. Apache) für dieses Verzeichnis Scheiberlaubnis hat. Auf Unix-Rechnern lautet die Einstellung für das Verzeichnis "nobody" oder "apache".

> Wenn Sie einen gemieteten Server nutten, der von mehrren Nutzern in Anspruch genommen werden, sollten Sie darauf achten, das nichta lle 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 überschriebenW.

> 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 Siue, 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 e "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, Email 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 autromatisch 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.:

> - Erstellen und löschen von Kursen
> - Erstellen und bearbeiten von Nutzerzugängen
> - Verwaltung von Dozentenzugängen
> - Veränderungen von Einstellungen,die für die gesamte Seite gelten.

### 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.phpa lle 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 Sufe nicht zu intensiv mit den Details zu beschäftigen, da alle diese Einstellungen später durch den Lehrer geändert werden können.

> Über den Button "Änderungen speichern", gelangen sie auf eine neue Seite. Auf dieser Seite können sie den Lehrer für diesen Kurs zuweisen. Sie können nur Teilnehmer als Lehrer zuweisen, die bereits einen Zugang zu diesem Moodle- System besitzen. Wenn ein neuer Lehrer- Zugang eingerichtet werden soll, bitten sie den Lehrer sich selbst einen Zugang einzurichten ( Über die Anmeldeseite) oder erzeugen sei 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 "Lehrer Handbuch", um weitere Informationen zur Erstellung eines Kurses zu erhalten. Eine ausführliche Anleitung in deutscher Sprache finden sie im Deutschen Forum.

Moodle Dokumentation

Version: $Id$