MoinMoin-Wiki
MoinMoin Wiki
Was ist MoinMoin?
MoinMoin ist eine freie Wiki-Software, die in der Programmiersprache Python geschrieben ist. Der Name „MoinMoin“ ist eine Anspielung auf den norddeutschen Gruss „Moin“ sowie auf die Doppelung und „CamelCase“-Schreibweise von „WikiWiki“, einem Synonym von „Wiki“.
Vor und Nachteile des MoinMoin-Wiki
Vorteile:
- OpenSource
- Sie läuft ohne Datenbank, d.h. läuft auf Dateiebene
- Einfach zu warten
- ACLs (Berechtigung)
- Crossplattform (Windows, Mac, Linux)
- Standalone Lösung, WSGY-Mode
- Versionsverwaltung
Nachteile:
- Python muss installiert sein, d.h. braucht einen Interpreter.
- Python als Skriptsprache (Noch eine Sprache die man lernen muss)
- WYSIWYG-Editor hat ein paar Macken.
Voraussetzungen
Damit das Wiki auf der Synology-Box läuft muss zwingend Python installiert werden. Will man "nur" die Standalone (ohne Apache-Server) betreiben, wird das mod-wsgi nicht benötigt.
ipkg install python #Python Framework ipkg install mod-wsgi #Apache Modul für wsgi ipkg install py25-moin #MoinMoin Wiki
Benutzer erstellen
Ich empfehle das Wiki unter einem anderen Benutzer laufen zu lassen. Sollte durch eine Schwachstelle im Wiki eingebrochen werden, ist nur das Wikiverzeichnis betroffen.
Benutzer: wiki Gruppe: www-wiki
Ordner / Dateistruktur
Ordner der Originalen Wiki-Seiten umbennen, ggf. später löschen wenn man ein Update zu einer älteren Version macht.
mv /opt/share/moin/data /opt/share/moin/data_old
Im Homeverzechnis des wiki-users einen Ordner data erstellen und Soflink erstellen:
cd /opt/share/moin/ ln -s /volume1/homes/wiki/data data
Softlink für das Sitepackages erstellen
cd /opt/share/moin/data/ ln -s /opt/lib/python2.5/site-packages/MoinMoin/web/static/htdocs htdocs
Softlink der Wiki Konfiguration im Root-Wiki-Verzeichnis erstellen
cd /opt/share/moin/ ln -s config/wikiconfig.py .
Order für Log's erstellen
mkdir /opt/share/moin/logs
Underlay-Daten entpacken. Dies sind Hilfeseiten für das Wiki.
tar xfv /opt/share/moin/underlaytmp.tar.gz
Konfiguration
wikiconfig.py
Folgende Optionen müssen definiert werden:
# Wiki Namen in der Titelheader sitename = u'Mein Wiki' # Startseite page_front_page = u"MyStartingPage" # AdminBenutzer superuser = [u"Moderator","Administrator", ] # ACL bevor die Seite geladen wird. Ist besonders für Nicht-Öffentliche Seiten praktisch. acl_rights_before = u"YourName:read,write,delete,revert,admin"
wikiserverconfig.py
Wiki-Server Konfiguration:
hostname = '[IP-Adresse]' port = 8081 user = 'wiki' group = 'www-wiki'
Berechtigung
Jetzt alle Daten und Unterverzeichnisse die richtigen Berechtigungen setzen. Ggf. wiederholen, wenn man Daten aus einem älteren Wiki migriert.
cd /opt/share/moin/ chown wiki:www-wiki -R *
Der erste Test
Jetzt kann man Testen, ob das Wiki richtig konfiguriert ist.
cd /opt/share/moin/ ./wikiserver.py
Werden keine Fehlermeldung angezeigt, kann man nun das Wiki direkt im Browser anzeigen:
http://[IP-Adresse]:8081
Wenn nun alles geklappt hat kann man hier sich entscheiden, will man das Wiki im Standalone-Modus oder im mod_wsgi betreiben:
Standalone-Version
Apache-Version (mod_wsgi)
Jetzt wo wir wissen, dass das Wiki funktionstüchtig ist, müssen wir noch den Apache konfigurieren.
moin.wsgi
Das WSGI Modul muss wissen wo das Root-Verzeichnis des Wikis liegt: /opt/share/moin/server/moin.wsgi
sys.path.insert(0, '/opt/share/moin')