Spektrum erweitern: Python und Moinmoin Wiki

In den letzten Jahren habe ich vorallem Webapplikationen mit PHP entwickelt. Davor hatte ich viel mit Cold Fusion gearbeitet. Damals mußte ich aus kostengründen von Cold Fusion auf PHP umsteigen, wobei das für mich schon ein harter Schlag war. Cold Fusion war damals schon eine sehr mächtige Sprache, während PHP eher eine kostenlose Script-Spielerei war. Inzwischen hat sich PHP aber ebenfalls sehr stark weiterentwickelt und verändert. PHP ist inzwischen eine professionelle Sprache um stabile Webapplikationen zu entwickeln. Neben PHP gibt es im Internet aber noch viele weitere interessante Sprachen. Eine davon will ich mir jetzt mal näher anschauen: Python.

Warum ich mich für Python interessiere? Naja, das Moinmoin Wiki ist mit Python entwickelt. Das Wiki bietet einige sehr interessante Features, die ich bei vielen anderen php-basierten Wikis (z.B. mediaWiki) vermisse. So ist Wiki-Farming, ein grafischer Editor und auch ein seitenbasiertes Rechtesystem schon von Anfang an integriert. Diese Funktionalitäten fehlen leider beim mediaWiki. Man kann sie zwar über Plugins nachrüsten – aber ich bin halt das WordPress-Plugin-System gewöhnt… und dagegen wirkt die Erweiterungsmöglichkeit vom mediaWiki eher an das finstere Mittelalter.

Meine ersten Gehversuche mit Moinmoin

Neue Webapplikationen lade ich meist via FTP auf meinem Webserver hoch, richte einen virtuellen Host dafür ein und ruf das Verzeichnis auf. Funktioniert eigentlich super. Leider aber nicht mit Moinmoin. Das muß ich wohl erstmal auf später verschieben und einen anderen Weg einschlagen.

DesktopEdition

Okay, neuer Versuch. Diesmal fange ich erstmal klein an => Lokale Installation auf meinem Rechner. Dazu gibt es die Beschreibung “DesktopEdition”.

  1. MoinmoinWiki heruntergeladen
  2. Die Dateien habe ich mal unter C:\Programme\moin-1.8.5 entpackt
  3. Python heruntergeladen
  4. Python unter C:\Programme\Python26 installiert
  5. Doppelklick auf C:\Programme\moin-1.8.5\wikiserver.py
  6. Und schon war mein Wiki unter http://127.0.0.1:8080/ online.

Wow, das war ja einfach. Damit kann ich eigentlich schon ein wenig rumspielen. Aber für einen Live-Betrieb macht das wenig Sinn. Ich habe eigentlich will ich ja MoinMoin auf meinem Webserver bei Domainfactory (ein SharedHosting-Paket, Linux/Apache) und auch auf einem Windows-Server mit Apache (später vielleicht auch IIS) zum Laufen zu bringen.

Nächster Schritt: Mit XAMPP

Um meinem Ziel etwas näher zu kommen, installiere ich mir hier unter Windows erstmal XAMPP. Das ist ein Paket mit Apache, MySQL, PHP und Perl. Python ist da leider erstmal nicht dabei.

Jetzt muß ich mich aber erstmal schlau machen, wie ich Python dort zum laufen bringe. Scheinbar gibt es da mehrer Möglichkeiten (CGI, mod_python, mod_wsgi, …) welche davon jetzt die beste ist und wie ich testen kann, ob es richtig funktioniert, weiß ich noch nicht….

So, jetzt bin ich schonmal einen Schritt weiter.

  1. XAMPP habe ich installiert und den Apachen gestartet.
  2. Zusätzlich habe ich noch die Datei mod_wsgi-win32-ap22py26-2.6.so von mod_wsgi heruntergeladen und als C:\Programme\xampp\apache\modules\mod_wsgi.so gespeichert
  3. In der Datei C:\Programme\xampp\apache\conf\htdocs.conf habe ich die Zeile LoadModule wsgi_module modules/mod_wsgi.so hinzugefügt.
  4. Apache neu gestartet

So, jetzt müßte Python doch laufen, oder? Meine ersten Versuche mit einer text.py, die ich direkt http://127.0.0.1/test.py aufgerufen haben, hat leider nicht wirklich funktioniert. Ja, ich gebe es zu. Ich probiere sofort aus und erwarte, dass alles so wie bei PHP läuft. Dank des QuickConfigurationGuide vom modwsgi habe ich es jetzt doch zum Laufen gebracht. Die Zeile WSGIScriptAlias /myapp “C:/Programme/xampp/htdocs/test.wsgi” hilft hier ungemein weiter. Nachdem ich den Server neu gestartet hatte, bekam ich unter http://127.0.0.1/myapp auch ein “Hello World!”. Juchuu, Python läuft. Aber dahinter steckt eine andere Philosophie. Die eigentlichen Scripte werden nicht in über das Web zugängliche Verzeichnisse gestellt, sondern über – in diesem Fall – die Apache-Konfiguration referenziert. Dadurch sind die Scripte nicht direkt angreifbar ;-)

Also Python läuft jetzt über mod_wsgi. Jetzt mal wieder zu Moinmoin. Wie bekomme ich es jetzt auf Apache zum Laufen? Die Antwort gibt es in den InstallDocs. Folgende Befehle habe ich jetzt in meiner Windows-Eingabeaufforderung eingegeben:

  1. cd \programme\moin-1.8.5
  2. C:\Programme\Python26\python.exe setup.py install –record=install.log

Danach wurden erstmal jede Menge Dateien (steht alles im install.log) in das Verzeichnis C:\Programme\Python26\ kopiert.

… to be continued

Dieser Beitrag wurde unter Python abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>