Wissen griffbereit

Mediawiki & Wikipedia lokal installieren

01.11.2004
Man hat es sich irgendwo notiert – doch wo? Wenn man seine Notizen auf der Festplatte nicht mehr durchblickt, schafft ein Wiki Abhilfe. Im Browser lassen sich die Infos von überall im lokalen Netz abrufen, ergänzen und miteinander verlinken.

"Hallo! Sie haben da eine Riesensicherheitslücke! Ich kann alle Seiten auf Ihrer Homepage ändern." – solche Mails entlocken den Betreibern der Online-Enzyklopädie Wikipedia nur noch ein müdes Lächeln. Was dem Einen eine Sicherheitslücke ist, hat sich mittlerweile eine ganze Reihe von Websites zum Prinzip gemacht. So genannte Wikis gestatten es jedem Besucher, die Inhalte einer Homepage im Browser zu bearbeiten.

Was sich im ersten Moment verrückt anhört, funktioniert tatsächlich: Neben Wikipedia, die inzwischen über eine Million in Zusammenarbeit entstandene Artikel zählt, setzen auch immer mehr Open-Source-Projekte auf Wikis, um gemeinschaftlich Dokumentation zu verfassen.

Auch zu Hause ist die Wiki-Software nützlich. Wer hatte nicht schon mal den Wunsch, die Stapel seiner Notizen und Dokumente untereinander zu verknüpfen? Mit einem Wiki ist das eine simple Sache: Eine spezielle Syntax verwandelt einen Begriff im Text in einen Link auf eine neue oder schon existierende Seite.

Weit über 50 Wiki-Engines in den unterschiedlichsten Programmiersprachen umfasst mittlerweile die Liste [1] im Ur-Wiki, dem Portland Pattern Repository. Eine der meistverbreiteten ist das ursprünglich für Wikipedia geschriebene, aber auch auf zahlreichen anderen Sites eingesetzte Mediawiki.

Dieser Artikel erklärt, wie Sie Mediawiki selbst aufsetzen, sei es als Wiki für den Hausgebrauch, oder – mit den importierten Datenbeständen der deutschen Wikipedia – als Enzyklopädie zum bequemen Offline-Lesen.

Kasten 1: Konzepte

Speziell für eine Enzyklopädie entwickelt, unterscheidet sich Mediawiki in manchen Punkten von herkömmlichen Wikis. So gibt es das Konzept der so genannten Namensräume, festen Präfixen vor dem eigentlichen Seitentitel. Zu jeder Seite existiert eine Diskussionsseite, die Sie über den Link in der Werkzeugleiste oben erreichen. Jeder Benutzer besitzt eine persönliche Seite (Link in Wiki-Syntax [[Benutzer:Name]], die er zum Beispiel für eine Vorstellung oder Notizen nutzen kann. Hinterlässt jemand auf der zugehörigen Benutzerdiskussionsseite eine Nachricht, zeigt Mediawiki dies dem angesprochenen User beim nächsten Seitenaufruf an. Für Bilder und andere Dateien legt die Software Beschreibungsseiten mit dem Präfix Bild an, die Sie ganz normal als Wiki-Seiten bearbeiten können.

Auch sämtliche Texte der Benutzeroberfläche lassen sich direkt im Wiki ändern. Über http://localhost/wiki/index.php/Spezial:Allmessages erhalten Sie eine Liste aller Seiten im MediaWiki-Namensraum. Jede davon entspricht einer Software-Meldung, zum Beispiel "Login erfolgreich" u.a. Auf http://localhost/wiki/index.php/MediaWiki:Currentevents biegen Sie beispielsweise den Link Aktuelle Ereignisse auf eine andere Seite um. Damit nicht jeder fröhlich die Oberfläche ändert, dürfen nur Benutzer mit Administratorrechten diese Seiten bearbeiten.

Alle Benutzer dürfen hingegen Seiten im Vorlage-Namensraum anlegen und ändern. Mit {{Titel}} bindet man etwa den Inhalt von http://localhost/wiki/index.php/Vorlage:Titel auf beliebigen anderen Seiten ein.

Installation

An Zutaten verlangt Mediawiki einen laufenden Apache mit PHP-Modul und eine MySQL-Datenbank, die Wartungsskripte brauchen den PHP-Kommandozeilen-Interpreter, der beispielsweise unter Debian in dem eigenen Paket php4-cli steckt. Wer sich die Installation besonders einfach machen will, benutzt dafür das Server-Paket XAMPP [2], das alles Benötigte mitbringt.

Zur Thumbnail-Generierung installieren Sie optional ImageMagick oder die PHP-Grafikbibliothek GD.

Laden Sie von http://mediawiki.org die aktuelle stabile Version von Mediawiki herunter. In diesem Artikel verwenden wir Mediawiki 1.3.4.

Melden Sie sich nun auf der Konsole als Root an und wechseln Sie ins Wurzelverzeichnis des Web-Servers, zum Beispiel unter XAMPP nach /opt/lampp/htdocs oder unter Debian nach /var/www, und entpacken Sie mit

tar xzvf /pfad/zu/mediawiki-1.3.4.tgz

die Wiki-Software ins aktuelle Verzeichnis. Geben Sie dem nun entstandenen Mediawiki-Verzeichnis einen kurzen Namen, den Sie später auch in der URL sehen wollen, zum Beispiel wiki, und wechseln Sie mit cd dorthin.

Mit

chmod a+w config

machen Sie das Konfigurationsverzeichnis für den Web-Server vorübergehend schreibbar. Nach der Installation sollten Sie es wieder auf Read-only setzen.

Rufen Sie nun im Browser unter http://localhost/wiki/config/index.php das Installationsskript auf. XAMPP-Nutzer sollten vor der Installation mit /opt/lampp/lampp php4 auf die ältere PHP-Version umschalten, da sonst die neuen Skins von Mediawiki nicht funktionieren.

Das Skript prüft zuerst die Voraussetzungen für die Installation. Wer an dieser Stelle nur eine Fehlermeldung statt des Dialogs unter Abbildung 1 erhält, sollte seine Apache- und PHP-Einstellungen überprüfen und korrigieren.

Abbildung 1: Mediawiki installieren Sie über ein PHP-Skript im Browser, das alle wichtigen Einstellungen abfragt.

Wer den Datenbestand der Wikipedia importieren will, trägt unter Site name: Wikipedia ein, andernfalls einen kurzen, prägnanten Namen. Der Site name taucht später an zahlreichen Stellen im Wiki als Projektbezeichnung auf.

Die E-Mail-Adresse dient als Kontaktadresse bei Fehlermeldungen. Im Sprachauswahldialog stellen Sie neben der Sprache der Oberfläche zugleich auch das Zeichensatz-Encoding ein. de - Deutsch - Unicode erlaubt es, im Wiki fremde Zeichensätze direkt einzugeben, statt sie mit HTML-Entities zu umschreiben. Das gewählte Encoding sollte dem des Datensatzes entsprechen, den Sie später importieren – für die deutsche Wikipedia Unicode, für Englisch Iso-8859-1.

Die Lizenzinformation ist fürs Wiki im lokalen Netz kaum relevant. Wer ein öffentliches Wiki betreiben will, sollte sich darüber jedoch ein wenig Gedanken machen. Die GNU Free Documentation License ist eine von der GPL inspirierte Lizenz für Texte und andere Dokumente, die freies Kopieren und kommerzielle Verwertung erlaubt. Mehr Wahlmöglichkeiten erlauben die Lizenzen von Creative Commons, bei denen man zum Beispiel kommerzielle Verwertung explizit ausschließen kann. Ein Klick auf choose führt zum Auswahldialog der Creative-Commons-Website.

Unter Sysop account legen Sie einen besonderen Benutzer-Account fürs Wiki mit erweiterten Rechten an.

Zuletzt kommen die Datenbankeinstellungen. Die voreingestellten Werte können Sie in der Regel übernehmen. Wer mehrere Mediawikis auf demselben Server installiert, sollte dafür natürlich unterschiedliche Datenbanknamen wählen. In das letzte Feld DN root password geben Sie Ihr MySQL-Root-Passwort ein. Dieses ist nicht identisch mit dem Linux-Root-Passwort, je nach Distribution kann es auch leer sein. XAMPP-Nutzer setzen das Passwort mit dem Skript /opt/lampp/lampp security.

Nach dem Klick auf Install legt das Skript die Datenbank, die angegebenen Benutzer und die Konfigurationsdatei LocalSettings.php im Verzeichnis config an. Geht alles gut, sehen Sie eine Erfolgsmeldung mit einem Link zum Wiki in der letzten Zeile.

Bevor Sie Ihr neues Wiki bewundern können, ist noch ein kurzer Griff zur Konsole nötig. Im Mediawiki-Verzeichnis verschieben Sie die frisch angelegten lokalen Einstellungen mit

mv config/LocalSettings.php .

aus dem Konfigurations- ins Hauptverzeichnis. Damit ist das Wiki einsatzbereit. Über den angegebenen Link erreichen Sie die Hauptseite (Abbildung 2).

Abbildung 2: Bereit zum Reinschreiben: Nach erfolgreicher Installation präsentiert sich Mediawiki mit einer leeren Hauptseite, die Sie über den Link "Bearbeiten" ändern können.

Erste Schritte im Wiki

Ein Klick auf bearbeiten in der Leiste oben öffnet ein Textfenster, in dem nun jeder die Seite mit Inhalt in Wiki-Syntax füllen kann (siehe Tabelle 1). Das ist ganz normaler Text mit ein paar speziellen Formatierungsanweisungen. Mit * am Zeilenanfang legen Sie beispielsweise Listen an, von zwei, drei oder vier Gleichheitszeichen umschlossene Texte stellt das Wiki als verschieden große Überschriften dar:

==Überschrift==

Einen neuen Absatz erzeugen Sie mit einer Leerzeile. Die spannendste Funktion sind jedoch Links. Text in zwei eckigen Klammern wandelt Mediawiki in einen internen Link um. Geben Sie

[[Testseite]]

ein und schicken Sie die Änderungen mit Artikel speichern ab. Mediawiki stellt Testseite nun als roten Link dar – ein Klick darauf öffnet ein weiteres Edit-Fenster, in dem Sie die neue Seite mit dem Titel Testseite anlegen können. Einen Link auf die Startseite erzeugen Sie dort mit [[Hauptseite]]. Dieser erscheint in Blau, da die Seite schon existiert. Ausführliche Informationen zur Gestaltung von Seiten bietet das Mediawiki-Handbuch unter [3].

Tabelle 1: Wiki-Syntax

==Ebene 1== Überschrift erster Ebene
===Ebene 2=== Überschrift zweiter Ebene
====Ebene 3==== Überschrift dritter Ebene
''kursiv'' kursiv
'''fett''' fett
* Eintrag unnummerierte Listen erstellen Sie mit * am Zeilenanfang
# Eintrag nummerierte Liste
waagerechte Linie
[[Titel der neuen Seite]] interner Link
[[Titel|Anderer Text]] interner Link mit alternativem Text
http://einedomain.de externer Link (wird automatisch in einen anklickbaren Link umgewandelt)
[http://einedomain.de Beschreibung] externer Link mit alternativem Text
[[Bild:Datei.jpg]] Bild in eine Seite einbinden
[[Bild:Datei.jpg|thumb]] Thumbnail-Bild einbinden
{{Name}} bindet den Inhalt der Seite "Vorlage:Name" dynamisch ein
{{subst:Name}} wird beim Speichern durch den Inhalt der Seite "Vorlage:Name" ersetzt
~~~ erzeugt für angemeldete Benutzer eine Signatur, d. h. einen Wiki-Link zur persönlichen Benutzerseite.
~~~~ Signatur mit Zeit- und Datumsstempel

Wer eine lokale Wikipedia-Kopie aufsetzen will (Abbildung 3), geht nun weiter nach der Anleitung in Kasten 2 vor.

Abbildung 3: Mit dem passenden Datenbank-Dump wird aus dem Wiki eine Enzyklopädie: der Artikel "Linux" aus der Wikipedia.

Einstellungssache

Bis auf den Bilder-Upload ist das Wiki nach der Installation voll einsatzfähig. Aus Sicherheitsgründen ist dieser normalerweise deaktiviert. Um das Hochladen von Bildern zu erlauben, entfernen Sie das Kommentarzeichen (#) in der Zeile # $wgDisableUploads = false;. Der Web-Server-Prozess muss für das Verzeichnis images Schreibrechte besitzen, am besten ordnen Sie es mit dem Befehl chown dem richtigen User zu, zum Beispiel www-data unter Debian.

Der Upload von Bildern ist nur angemeldeten Benutzern erlaubt. Zum Test legen Sie sich daher über den Link Anmelden rechts oben einen Benutzer-Account an oder loggen sich dort als der bei der Installation eingerichtete Benutzer WikiSysop ein. In der Seitenleiste links erscheint dann ein Link zum Upload-Formular.

Im Auslieferungszustand erlaubt Mediawiki nur wenige Dateitypen. Wer die Liste erweitern will, kopiert die entsprechenden Angaben aus der Datei includes/DefaultSettings.php in LocalSettings.php und ergänzt die Liste dort. Die erlaubten Dateieendungen legt folgende Zeile fest:

$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'ogg' );

Wer sein Wiki nur im lokalen Netz hinter einer Firewall betreibt, kann die Überprüfung mit

$wgCheckFileExtensions = false;

auch komplett abschalten. Neben der Datei-Whitelist enthält DefaultSettings.php zahlreiche weitere Konfigurationsoptionen. Wollen Sie eine davon ändern, kopieren Sie die Angabe in Ihre lokalen Einstellungen und wandeln sie dort ab, da DefaultSettings.php bei einem Update überschrieben wird.

Mehr zu den Interna von Mediawiki finden Sie auf Meta-Wiki [5], dort ist die Dokumentation der Software angesiedelt.

Kasten 2: Enzyklopädie zum Offline-Lesen

Wikipedia bietet etwa wöchentlich aktualisierte Datenbank-Dumps auf [4] zum Download an. Für jede Sprache finden Sie dort zwei Links: cur und old. Für den lokalen Mirror brauchen Sie nur cur herunterzuladen, die old-Tabelle enthält zusätzlich alle alten Versionen der Artikel. Der Befehl

bzip2 -dc 2004xxxx.sql.bz2 | mysql -u root -p wikidb

entpackt das mit bzip2 komprimierte Archiv und spielt es in die Datenbank ein.

Bei der folgenden Passwortabfrage geben Sie das Administratorpasswort der Datenbank ein, nicht Ihr System-Root-Passwort. Eventuell müssen Sie für den Import die Werte für max_allowed_packet in der MySQL-Konfigurationsdatei /etc/mysql/my.cnf (XAMPP: /opt/lampp/etc/my.cnf) hochsetzen. Wir haben statt der unter Debian und XAMPP voreingestellten 1M großzügig 16M spendiert. Damit die Änderung wirksam wird, starten Sie anschließend MySQL neu.

Nun heißt es warten – Linux packt die Daten aus und spielt sie in die Datenbank ein. Nach dem Import sollten Sie unter der Adresse http://localhost/wiki/index.php/Hauptseite die Wikipedia-Hauptseite finden.

Damit auch die Suche und andere Spezialfunktionen funktionieren, generieren Sie nun noch die Link-Tabellen und den Suchindex neu. Das erledigt das im Verzeichnis maintenance mitgelieferte PHP-Skript rebuildall.php.

Wechseln Sie dazu ins Mediawiki-Verzeichnis und legen Sie mit

cp AdminSettings.sample Adminsettings.php

die Einstellungsdatei für die Wartungsskripte an. Der dort eingetragene Admin-User existiert noch nicht. Wer sich das Anlegen eines weiteren MySQL-Users sparen will, kann dort vorübergehend den MySQL-Root-User eintragen (siehe Abbildung), sollte die Datei aber anschließend aus dem Web-Server-Verzeichnis entfernen.

Nach einem Wechsel ins Verzeichnis maintenance rufen Sie dort das Wartungsskript auf:

php rebuildall.php

Unter XAMPP verwenden Sie den vollen Pfad: /opt/lampp/bin/php. Bei manchen Distributionen wie Debian müssen Sie den PHP-Kommandozeilen-Interpreter als eigenes Paket nachinstallieren. In /etc/php4/cli/php.ini mussten wir unter Debian noch vor extension=mysql.so das Semikolon entfernen, damit PHP das MySQL-Modul auch auf der Kommandozeile lädt.

Infos

[1] Wiki-Engines: http://c2.com/cgi/wiki?WikiEngines

[2] XAMPP: http://www.apachefriends.org/de/xampp-linux.html

[3] Mediawiki-Handbuch: http://meta.wikimedia.org/Hilfe:Handbuch

[4] Download des Wikipedia-Datenbestands: http://download.wikimedia.org/

[5] Meta-Wiki: http://meta.wikimedia.org

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Fünf schlanke Wikis ohne Datenbank
    Für die Dokumentation eines kleinen Projekts oder zum Sammeln von Informationen muss nicht immer ein schwergewichtiges Wiki mit Datenbank dahinter her. Oft tut es auch eine kleinere Lösung, die zum Speichern des Inhalts einfache Textdateien nutzt.
  • PHP kennenlernen
    PHP steckt hinter vielen großen Webanwendungen. Doch bereits für die Zwecke einer kleinen Privat-Homepage lohnt es sich, diese Skriptsprache kennen zu lernen.
  • Besser arbeiten mit OpenOffice
    Für alle Anwender des freien Office-Pakets präsentieren wir nützliche Tipps und Tricks. Diesmal geht es um die Arbeit mit Erweiterungen, und wir zeigen, wie Sie mit Writer Beiträge an ein Wiki senden.
  • Semantisches Mediawiki vorgestellt
    Semantic Mediawiki, eine freie Erweiterung des bekannten Media-Wiki, macht Wiki-Seiten zu Datenquellen, aus denen Abfragen gezielt Daten extrahieren.
  • MS-Office lernt Mediawiki

    Die in C# geschriebene Word-Erweiterung entstand in Zusammenarbeit von Microsoft, dem neuseeländischen Bildungsministerium und der Open Education Resource Foundation von der Neuseeländer Otago-Fachhochschule.
Kommentare

Infos zur Publikation

title_2014_09

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 4 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...