Unterschiede zwischen den Revisionen 1 und 20 (über 19 Versionen hinweg)
Revision 1 vom 2005-05-31 20:10:27
Größe: 2202
Autor: phil
Kommentar: erste version
Revision 20 vom 2012-06-13 21:26:27
Größe: 5690
Autor: anonym
Kommentar: converted to 1.6 markup
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
[[TableOfContents]] <<TableOfContents>>
Zeile 5: Zeile 5:
== 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] mit dem Modul [http://httpd.apache.org/docs/mod/mod_cgi.html mod_cgi] zum Einsatz.
= 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.
Zeile 8: Zeile 8:
== Ziel ==
[http://moinmoin.wikiwikiweb.de/ MoinMoin] als lokales Wiki auf dem eigenen PC nutzen.
= Ziel =
[[http://moinmoin.wikiwikiweb.de/|MoinMoin]] auf einem PC ohne Internetzugang nutzen.
Zeile 11: Zeile 11:
== Begriffe == = 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):
Zeile 13: Zeile 19:
||$USER||Benutzer mit dem du am System angemeldet bist||
||$WIKINAME||Name deines Wikis||
||$NAME_[1|2|3|]||ein beliebiger Wert||
{{{
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:
Zeile 17: Zeile 25:
== Installation ==
=== Packete installieren ===
Folgende Packate muessen installiert werden:
{{{
apt-get install moinmoin-common python2.3-moinmoin python
}}}

=== Daten kopieren ===
Lege nun ein neus Verzeichnis fuer das Wiki an und kopiere die Daten dort hinein:
Zeile 28: Zeile 27:
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:
Zeile 29: Zeile 33:
cp -r /usr/share/moin/data /usr/share/moin/underlay /usr/share/moin/server/moin.cgi /home/$USER/$WIKINAME
}}}

=== Webserver einrichten ===
Sollte das Modul [http://httpd.apache.org/docs/mod/mod_cgi.html mod_cgi] noch nicht aktiv sein, muss es aktiviert werden:
Zeile 37: Zeile 36:
Bearbeite nun die Datei ''/etc/apache/httpd.conf'':
Zeile 38: Zeile 38:
Bearbeite nun die Datei ''/etc/apache/httpd.conf'':
Zeile 45: Zeile 44:

Zeile 53: Zeile 50:
Jetzt muss Apache neu gestartet werden:
Zeile 54: Zeile 52:
Jetzt muss Apache neu gestartet werden:
Zeile 58: Zeile 55:
== Webserver Apache 2 einrichten ==
In die Datei ''/etc/apache2/conf.d/$WIKINAME'' folgende Zeilen eintragen:
Zeile 59: Zeile 58:
=== MoinMoin einrichten === {{{
  Alias /wiki/ /usr/share/moin/htdocs/
  ScriptAlias /$WIKINAME /home/$USER/$WIKINAME/moin.cgi
}}}
Den Apache2 freundlich neustarten:

{{{
apache2ctl graceful
}}}
== MoinMoin einrichten ==
Zeile 61: Zeile 69:
Zeile 66: Zeile 75:
Erstelle eine Konfigurationsdatei fuer dein Wiki:
Zeile 67: Zeile 77:
Erstelle eine Konfigurationsdatei fuer dein Wiki:
Zeile 69: Zeile 78:
cp /etc/moin/moinmaster.py /etc/moin/$WIKINAME cp /etc/moin/moinmaster.py /etc/moin/$WIKINAME.py
Zeile 71: Zeile 80:
und bearbeite diese:
Zeile 72: Zeile 82:
und bearbeite diese:
Zeile 81: Zeile 90:
<<BR>> Fertig. Nun ist dein Wiki unter ''<<Verbatim(http://localhost/$WIKINAME/)>>'' zu erreichen.
Zeile 82: Zeile 92:
[[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}}}


Was ist das hier

Diese Anleitung beschreibt die Einrichtung von MoinMoin 1.3.4 unter Debian/GNU Linux. Dabei kommt Apache 1.3 bzw. 2 mit dem Modul mod_cgi zum Einsatz.

Ziel

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 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'


Fertig. Nun ist dein Wiki unter 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 MoinMoin Performance Überblick und diese Benchmarks an.

fastcgi

An Stelle des klassischen cgi benutzen wir 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 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


Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.