Dokuwiki
☚ zurück
Dieses Kapitel beschreibt die Installation und Konfiguration von DokuWiki auf einem Raspberry Pi. Es werden die Einrichtung des Webservers (Apache2 & PHP), der Download und die Konfiguration von DokuWiki sowie die notwendigen Berechtigungen behandelt.
Das offizielle DokuWiki-Logo ist
unter der GNU General Public License (GPL)
veröffentlicht, wie auch die gesamte
DokuWiki-Software selbst.
Überblick
Details
Webserver (Apache2 & PHP) installieren
Apache2 ist ein Webserver, der Anfragen von Browsern entgegennimmt und Webseiten ausliefert.
PHP ist eine serverseitige Scriptsprache, mit der dynamische Inhalte erzeugt werden können.
Apache2 und PHP bilden zusammen die Grundlage, um DokuWiki auf dem Raspberry Pi im lokalen Netzwerk oder Internet bereitzustellen.
Apache2 und PHP
sudo apt update && sudo apt upgrade -y
sudo apt install -y apache2 php libapache2-mod-php php-xml php-mbstring php-zip php-gd php-json php-curl php-opcache
sudo systemctl restart apache2
Apache2 Konfiguration
Damit das DokuWiki korrekt funktioniert, müssen zwei Dinge eingerichtet werden:
Bevor die
apache2.conf editiert wird, sollte man das Original sichern:
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2_course_backup.conf
Apache `.htaccess`-Dateien erlauben
`.htaccess` muss erlaubt werden, damit DokuWiki wichtige Konfigurationsregeln wie Pretty URLs und Berechtigungen umsetzen kann.
In der Datei /etc/apache2/apache2.conf muss im Abschnitt:
<Directory /var/www/>
...
AllowOverride None
...
</Directory>
die Zeile AllowOverride None auf All geändert werden:
<Directory /var/www/>
...
AllowOverride All
...
</Directory>
Tipp: Wenn DokuWiki nur in einem Unterverzeichnis liegt, z. B.
/var/www/wiki/, kann auch gezielt nur dieses Verzeichnis gesetzt werden:
<Directory /var/www/wiki/>
AllowOverride All
</Directory>
Mod Rewrite aktivieren
Mod Rewrite muss aktiviert werden, damit DokuWiki sogenannte „Pretty URLs“ nutzen kann, also saubere, benutzerfreundliche Webadressen ohne Parameter wie `?id=`.
Jetzt wird Mod Rewrite aktiviert und der Webserver neugestartet:
sudo a2enmod rewrite
sudo systemctl restart apache2
Überprüfen, ob der Webserver läuft
Um sicherzustellen, dass Apache2 korrekt gestartet wurde und Webseiten ausliefern kann, sollte der Status des Servers überprüft werden.
sudo systemctl status apache2 # Zeigt den aktuellen Status von Apache2
Außerdem sollte der Webserver über einen Browser getestet werden:
 |
| Ein frisch aufgesetzter Apache2-Webserver. |
DokuWiki (Download & Konfiguration)
Headless Raspberry Pi
Das Herunterladen geschieht normalerweise auf dem Remote-Rechner.
Dadurch stellt sich die Frage, wie DokuWiki auf den Raspberry Pi übertragen wird.
Man könnte (nicht empfohlen) auch über VNC arbeiten. Damit wäre dieses Problem gelöst. Wir wollen jedoch lernen, wie man unter Linux auf der Konsole arbeitet.
Es stehen zwei Methoden zur Auswahl:
ein SFTP-
GUI-Client (z. B. FileZilla)
oder scp auf der Konsole
Im Kurs werden alle drei Methoden (VNC, FileZilla und scp) geübt.
Download
 |
| Die offizielle Website des DokuWiki. |
DokuWiki wird über die offizielle Website DokuWiki heruntergeladen.
Wir verwenden stets die Version: Stable.
Beim Download kann zusätzlich angegeben werden, welche Sprachen oder Plugins enthalten sein sollen.
Nach dem Herunterladen benennen wir die Datei auf
dokuwiki-stable.tgz um!
Dadurch können die hier aufgeführten Befehle einfacher übernommen werden.
Wir verwenden folgende Einstellungen:
Sprache: nur Englisch und Deutsch
Plugins: Alle Plugins aktivieren
Version: Wir wählen die Stable-Version
 |
| Die Abbildung zeigt die von uns verwendeten Einstellungen zum Download von DokuWiki. |
Konfiguration
Nach dem Herunterladen muss die Datei (*.tgz) in das Verzeichnis /var/www/html kopiert und dort entpackt werden.
sudo cp ~/dokuwiki-stable.tgz /var/www/html # kopieren (User pi) nach /var/www/html
cd /var/www/html # in das Verzeichnis wechseln
sudo tar -xzf dokuwiki-stable.tgz # auspacken (extrahieren)
Anschließend muss sichergestellt werden, dass die Verzeichnisse und Dateien dem Benutzer und der Gruppe www-data zugeordnet sind, wie es für Apache HTTP Server erforderlich ist.
Schließlich sollte das Verzeichnis noch „ordentlich“ umbenannt werden. Erst danach kann die eigentliche Installation von DokuWiki erfolgen.
sudo chown -R www-data:www-data dokuwiki* # Benutzer und Gruppe auf www-data setzen
sudo mv dokuwiki* wiki # umbenennen
Wiki bearbeiten
Um produktiv arbeiten zu können
kann der Benutzer (hier: pi) der Gruppe www-data hinzugefügt werden.
Diese Vorgehensweise eignet sich gut für Heimnetzwerke; in professionellen Umgebungen werden dagegen separate Benutzer, Benutzergruppen, ACLs oder Containerlösungen eingesetzt, um Rechte und Sicherheit gezielt zu steuern.
sudo usermod -aG www-data pi # pi in die Gruppe www-data
sudo chmod g+s /var/www/html/wiki # Gruppenzugehörigkeit sicherstellen!
sudo find /var/www/html/wiki -type d -exec chmod 775 {} \; # Verzeichnisse
sudo find /var/www/html/wiki -type f -exec chmod 664 {} \; # Dateien
newgrp www-data # oder Alternativ neu anmelden!
DokuWiki (Installation)
Die Installation von DokuWiki läuft nach folgendem Schema ab:
Eine Installationsseite (hier: install.php) wird über den Webserver aufgerufen.
Danach folgt man den Anweisungen für die jeweilige Installationsroutine.
Zum Schluss sind häufig Aufräumarbeiten durchzuführen. Bei DokuWiki bedeutet das, dass die Installationsdatei auf dem Server gelöscht werden muss.
Dieses Schema kann beliebig oft mit einer neuen Installation wiederholt werden, falls man das Wiki durch zu viel Experimentieren „zerschossen“ haben sollte.
Dazu löscht man einfach das alte Wiki-Verzeichnis und beginnt erneut, indem man die heruntergeladene Datei – wie weiter oben beschrieben – extrahiert.
Anleitung
Zum Starten des Installers wird die IP-Adresse gefolgt von /wiki/install.php im Browser aufgerufen.
Beispiel
Wenn die IP-Adresse z.B. 172.16.33.209 ist, muss folgende URL im Browser aufgerufen werden:
172.16.33.209/wiki/install.php
Installation Hauptseite
Zuerst die Sprache oben wählen, sonst muss man alles von vorne neu eintragen.
Die Warnung kann ignoriert werden, da wir Apache2 schon ausreichend abgesichert haben.
Wir wählen ein privates (geschlossenes) Wiki!
 |
| Die Installation besteht nur aus dieser Seite (siehe Abbildung), in der einiges eingetragen werden muss. |
Installation erfolgreich beendet
 |
Bei Erfolg erscheint die Meldung, dass die install.php im Verzeichnis /var/www/html/wiki/ nun gelöscht werden muss. |
Die install.php muss gelöscht werden, um zu verhindern, dass Unbefugte die Installation erneut starten und Zugriff auf das Wiki erhalten.
pi@raspi-209:/var/www/html/wiki $ ls
bin COPYING doku.php inc install.php README vendor
conf data feed.php index.php lib SECURITY.md VERSION
pi@raspi-209:/var/www/html/wiki $ rm install.php
pi@raspi-209:/var/www/html/wiki $ ls
bin conf COPYING data doku.php feed.php inc index.php lib README SECURITY.md vendor VERSION
pi@raspi-209:/var/www/html/wiki $
Wiki ist einsatzbereit
 |
Ein frisch aufgesetztes Wiki, bereit, bearbeitet zu werden –  |
Wie man anschließend mit dem Wiki arbeitet, wird beispielsweise im Kurs gezeigt.