5581
Kommentar:
|
5571
Paketliste angepasst
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 21: | Zeile 21: |
apt-get install moinmoin-common python2.3-moinmoin python | apt-get install moinmoin-common python-moinmoin |
Was ist das hier
Diese Anleitung beschreibt die Einrichtung von [http://moinmoin.wikiwikiweb.de/ MoinMoin] 1.3.4 unter Debian/GNU Linux. Dabei kommt [http://httpd.apache.org/ Apache 1.3 bzw. 2] mit dem Modul [http://httpd.apache.org/docs/mod/mod_cgi.html mod_cgi] zum Einsatz.
Ziel
[http://moinmoin.wikiwikiweb.de/ MoinMoin] auf einem PC ohne Internetzugang nutzen.
Begriffe und Variablen
$USER |
Benutzer mit dem du am System angemeldet bist |
$WIKINAME |
Name deines Wikis |
$NAME_[1|2|3|] |
ein beliebiger Wert |
Installation
Pakete installieren
Folgende Pakete muessen installiert werden (zusätzlich zum Webserver):
apt-get install moinmoin-common python-moinmoin
Daten kopieren
Lege nun ein neus Verzeichnis fuer das Wiki an, kopiere die Daten dort hinein und aendere die Rechte:
mkdir /home/$USER/$WIKINAME cp -r /usr/share/moin/data /usr/share/moin/underlay /usr/share/moin/server/moin.cgi /home/$USER/$WIKINAME chown -R www-data: /home/$USER/$WIKINAME
Webserver Apache 1.3 einrichten
Sollte das Modul [http://httpd.apache.org/docs/mod/mod_cgi.html mod_cgi] noch nicht aktiv sein, muss es aktiviert werden:
dpkg-reconfigure apache
Bearbeite nun die Datei /etc/apache/httpd.conf:
<IfModule mod_alias.c> ... Alias /wiki/ /usr/share/moin/htdocs/ ... </IfModule> <IfModule mod_alias.c> ... ScriptAlias /$WIKINAME /home/$USER/$WIKINAME/moin.cgi ... </IfModule>
Jetzt muss Apache neu gestartet werden:
/etc/init.d/apache restart
Webserver Apache 2 einrichten
In die Datei /etc/apache2/conf.d/$WIKINAME folgende Zeilen eintragen:
Alias /wiki/ /usr/share/moin/htdocs/ ScriptAlias /$WIKINAME /home/$USER/$WIKINAME/moin.cgi
Den Apache2 freundlich neustarten:
apache2ctl graceful
MoinMoin einrichten
Bearbeite die Datei /etc/moin/farmconfig.py:
wikis = [ ("$WIKINAME", r"^localhost/$WIKINAME.*$"), ]
Erstelle eine Konfigurationsdatei fuer dein Wiki:
cp /etc/moin/moinmaster.py /etc/moin/$WIKINAME.py
und bearbeite diese:
# basic options (you normally need to change these) sitename = u'$NAME_1' # [Unicode] interwikiname = '$NAME_2' data_dir = '/home/$USER/$WIKINAME/data/' data_underlay_dir = '/home/$USER/$WIKINAME/underlay/' page_front_page = '$NAME_3'
BR Fertig. Nun ist dein Wiki unter Verbatim(http://localhost/$WIKINAME/) zu erreichen.
Performancesteigerung
Das Standard moin.cgi fühlt sich recht langsam an aber es gibt Wege zu einem schnelleren Moin. Schau dir diesen [http://moinmoin.wikiwikiweb.de/PerformanceProposals MoinMoin Performance Überblick] und diese [http://moinmoin.wikiwikiweb.de/MoinBenchmarks Benchmarks] an.
fastcgi
An Stelle des klassischen cgi benutzen wir [http://de.wikipedia.org/wiki/FastCGI fastcgi]. Moinmoin bietet glücklicherweise schon einen angepassten Server.
cp /usr/share/moin/server/moin.fcg /home/$USER/$WIKINAME/ chown www-data moin.fcg
In der moin.fcg musst du evtl. noch die Variable sys.path anpassen, wenn deine MoinMoin Configs nicht in /etc/moin/ liegen.
In /etc/apache2/conf.d/$WIKINAME ersetzt du die ScriptAlias Zeile durch folgendes:
<IfModule !mod_fastcgi.c> ScriptAlias /$WIKINAME "/home/$USER/$WIKINAME/moin.cgi" </IfModule> <IfModule mod_fastcgi.c> AddHandler fastcgi-script .fcgi .fcg FastCgiServer /mnt/data/cbxwiki/moin.fcg -idle-timeout 60 -processes 1 ScriptAlias /$WIKINAME "/home/$USER/$WIKINAME/moin.fcg" </IfModule>
- Dadurch läuft dein Wiki normal weiter, falls dein Webserver mal kein fastcgi anbietet.
Beim FastCgiServer kannst du die Parameter auch weglassen. Hier wurden nur ein Prozess gewählt, weil der Server (ein NSLU2) nicht gerade üppig mit RAM bestückt ist.
Zum Schluss musst du als root noch den Apache2 mit fastcgi bestücken:
apt-get install libapache2-mod-fastcgi a2enmod fastcgi apache2ctl graceful
Das war's jetzt sollte dein moin etwas schneller zu Potte kommen.
Zugangsbeschränkung mit htaccess
Aktuelle MoinMoin Versionen bieten die Möglichkeit von [http://moinmaster.wikiwikiweb.de/HelpOnAccessControlLists Access Control Lists], deren Verwendung gut in der wikiinternen Doku beschrieben wird. Ein weitere Möglichkeit ist die Kontrolle durch den Webserver, in diesem Fall Apache. Die hier beschriebene MoinMoin Installation ist bisher für jedeN BenutzerIn auf dem lokalen Rechner erreichbar. Um dies etwas einzuschränken, bietet sich die htaccess Methode an. Dazu trägst du am Ende der Datei /etc/apache2/conf.d/$WIKINAME folgende Zeilen ein:
<Location /$WIKINAME > AuthUserFile /home/$USER/$WIKINAME/.htpasswd AuthGroupFile /dev/null AuthName "$YOURUSER" AuthType Basic <Limit GET> require valid-user </Limit> </Location>
Anschließend generierst du mit dem Programm htpasswd die .htpasswd Datei:
htpasswd -c /home/$USER/$WIKINAME/.htpasswd $YOURUSER
Dabei wirst du zweimal nach dem Kennwort gefragt. Von jetzt an sollte nur noch YOURUSER mit dem passenden Kennwort Zugriff auf das Wiki haben.
moin per wget kriegen
wenns mal schnell und nicht interaktiv gehen muss, dann hilft folgende Zeile: wget -r -l0 -np --no-check-certificate --http-user="username" --http-password="passwort" --convert-links https://adresse.zum/wiki