Difference between revisions of "TWikiInstallationLinux"

From Dietrich Blog (Strato)
Jump to: navigation, search
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
= TWiki beim Web-Provider unter Linux installieren =
+
Has been moved to: http://blog.kr8.de/wiki-twiki-installation-linux/
Siehe auch: [[TWikiInstallation]]
 
 
 
== Mein Web-Provider ==
 
<dl>
 
<dt>Berechtigungen:<dd>Mein Web-Hosting-Provider ist [[http://www.westhost.com/vps.html Westhost|http://www.westhost.com/vps.html Westhost]] in Utah. Westhost bietet ein WebProvider als sog. ''Virtual Private Server'' d.h. ich bekomme als User '''quasi''' ein Linux-System für mich mit so etwas ähnlichem wie Root-Rechten. Aber nur "quasi", soll heissen virtuell. Ich habe aber sehr viele Möglichkeit, selbst in mein virtuelles System einzugreifen. Dazu baue ich eine SSH-Session zu meinem virtuellen Linux-Server in Utah auf und schon geht's los.
 
<dt>Apache:<dd>Version 1.3.27 war bereits installiert
 
<dt>Perl:<dd>Version 2.6.1 war bereits vorhanden und es lief bereits eine Perl-Applikation: ht/Dig.... Die für TWiki nötigen Perl-Module konnten mit CPAN nachinstalliert werden.
 
<dt>RCS:<dd>ist beim Provider nicht vorhanden. Mal sehen, wie weit ich ohne es komme...
 
== Verzeichnisse einrichten und TWiki hochladen ==
 
<dt>TWiki-Verzeichnis:<dd>Unterhalb des Apache-DocumetRoots eingerichtet: '''/var/www/html/twiki'''
 
<dt>TWiki&nbsp;hochladen:<dd>Mit FTP habe ich dann meine ganzen TWiki-Windows-Dateien dorthin hochgeladen.
 
<dt>TWiki-Unterverzeichnisse<dd>Berechtigungen für die TWiki-Unterverzeichnisse in Apache-Konfigurationsdatei ''httpd.conf'' einrichten.
 
== Perl-Scripts zum Laufen bringen ==
 
<dt>Apache-Einstellungen:<dd>ScriptAlias für /twiki/bin
 
<dt>Shebang-Zeile:<dd>In den TWiki-Perl-Scripts musste die Shebang-Zeile wieder geändert werden auf: '''#!/usr/bin/perl'''
 
<dt>chmod:<dd>Die TWiki-Perl-Scripts mussten auf ''executable'' gesetzt werden: ''chmod 755 ...''
 
== TWiki-Konfigurationsdateien anpassen ==
 
<dt>/twiki/bin/setlib.cfg:<dd>Hier musste der Pfad zum TWiki.pm eingetragen werden.
 
<dt>/twiki/lib/TWiki.cfg:<dd>Hier müssen diverse Urls und Datei-Pfade angepasst werden.
 
<dt>Testen:<dd>Der Aufruf des TWiki-Test-Scripts ''/twiki/bin/testenv'' ist äusserst wichtig. Alle Meldungen sollten genauestens analysiert werden.
 
== Apache Authentication einrichten ==
 
<dt>Überblick:<dd> Die User-Verwaltung von TWiki benutzt die User-Verwaltung von Apache mit (vereinfacht gesagt). Deshalb muss als erstes eine funktionierende Apache ''Basic Authentication'' für das Verzeichnis ''/twiki/bin'' eingerichtet werden. Diese kann auch zunächst losgelößt von TWiki getestet werden. Eine guten Überblick gibt TWiki.TWikiUserAuthentication
 
<dt>Datei&nbsp;.htaccess:<dd>Die Datei '''.htaccess''' in /twiki/bin musste angepasst werden. Die Eintragung ''AuthUserFile /var/www/html/TWiki/data/.htpasswd'' funktionierte nicht, da ich mich als alter Windows-Mensch erst wieder an die Signifikanz der Gross-/Kleinschreibung in Linux gewöhnen musste. Erst ''/var/www/html/twiki/data/.htpasswd'' hat funktioniert, denn ich hatte, wie oben auch beschrieben das TWiki-Verzeichnis schlicht als ''twiki'' erstellt.
 
<dt>User&nbsp;einrichten:<dd>Das Einrichten der User (Apache-User und TWiki-User) erfolgt durch das TWiki-Topic TWiki.TWikiRegistration .Als erstes habe ich die TWiki.TWikiRegistration umbenannt in TWiki.TWikiRegistrationIntranet und dann die als Variante vorhandene TWikiRegistrationPub umbenannt in TWiki.TWikiRegistration, damit sie zum Standard wird. Hintergrund: Bei der sog. '''Intranet-Variante''' geht TWiki davon aus, dass es bereits eine Authentifizierung gibt, aber mit anderen, bereits feststehenden Userids. Diese werden dann lediglich mit den TWiki-Userids verknüpft. Bei der '''Pub-Variante''', die ich hier verwende, werden die TWiki-Userids und TWiki-Passwörter automatisiert durch ein Perl-Script (mit dem Apache-Programm ''htpasswd'') in die Apache-User-Datei ''.htpasswd'' eingetragen.
 
</dl>
 
== RCS ==
 
Aus der TWiki-Sekundärliteratur habe ich herausgelesen, dass TWiki zwingend [[RCS]] benötigt und zwar zur Datenhaltung und Versionsverfolgung. RCS war bei meinem Provider aber nicht vorhanden. Was tun?
 
 
 
Eins vorweg: Ohne ein RCS kommt man mit TWiki auf jeden Fall auch schon ganz schön weit. Die Oberfläche läuft, man kann navigieren, Seiten betrachten, Suchen u.v.a.m. Beim Editieren und Speichern kommt dann aber doch RCS irgendwie ins Spiel. Die aktuellen TWiki-Topic-Seiten sind immer als schlichte ASCII-Dateien vorhanden. Z.B. steht das Topic ''WikiOhneRcs'' schlicht im ASCII-File ''WikiOhneRcs.txt'' - deshalb funktioniert ja auch das Anzeigen der TWiki-Topics ohne RCS. "Lediglich" die früheren Versionen einer Seite werden mit RCS verwaltet.
 
 
 
Wenn man nun doch die Versionsverwaltung benötigt, ist die einfachste Lösung, das im Lieferumfang von TWiki enthaltene '''RCSLite''' zu aktivieren. Dies ist ein in Perl-Scripts nachempfundenes RCS, das aber evtl. nicht so stabil funktioniert wie ein echtes RCS. Deshalb rät der Author zur Vorsicht in Produktiv-Umgebungen. Die Aktivierung von RCSLite erfolgt in der TWiki-Konfikurationsdatei TWiki.cfg.
 
 
 
RCSLite schreibt falsches Datum z.B. '''date 2004.00.01.12.33.50; author Hugo; state Exp;''' für den 01-Jan-2004. Das ist erstens unschön und führt zweitens zu Folgefehlern, z.B. beim Speichern  "month -1 out of range 0..11" in TWiki.pm line 1023.... Das Problem ist als bekannt dokumentiert unter: TWiki:Codev.MonthOutOfRangeWithRcsLite aber in meiner TWiki-Version 01FEB2003 noch nicht korrigiert.
 
 
 
== Offenes Problem mit RCSLite: Beim Erstellen neuer Seiten (Topics) wird das Datum völlig verstümmelt. ==
 
Folgendes Verhalten ist reproduzierbar:
 
# Editieren und Speichern zählt die Revisionsnummer hoch und zeigt zeigt auch das richtige Datum für diese Revison.
 
# Ein erneutes Editieren und Speichern innerhalb des Lock-Zeitraums zählt beim Speichern die Resivionsnummer nicht hoch (richtig) und scheint ein richtiges Datum am Bildschirm anzuzeigen.
 
# Ein weiteres Editieren führt zum falschen RCS-Datum:  "70.01.01".  Es könnte evtl. beim Schritt 2 schon intern etwas schief gelaufen sein.
 
Problemumgehung: In TWiki.cfg  $doKeepRevIfEditLock = "0";  d.h. "No", dann wird die Revisionsnummer immer hochgezählt und der Fehler mit dem falschen Datum kommt nicht mehr zum Zuge.
 
 
 
== Das LDAP-Plugin ==
 
Das TWiki.LdapPlugin erfordert das [[Perl]]-Modul  Net::LDAP. Konnte beim Provider problemlos mit CPAN installiert werden -  auf [[Windows2000]] und [[Cygwin]] funktionierte die Installation von Net::LDAP mit CPAN zunächst nicht.
 
 
 
Es gab zwei kleinere Probleme:
 
* In der Plugin-Doku stand "Net::Ldap", richtig ist aber: "Net::LDAP"
 
* In der Plugin-Doku stand "base="....", richtig ist aber: "basedn="..."
 
 
 
Beispiel für [[LDAP]] und LDAP-Plugin: [[Adressbuch]].
 
 
 
== Das ExplicitNumbering-Plugin ==
 
Das TWiki.ExplicitNumberingPlugin: Läuft auf Windows2000 mit Cygwin auf Anhieb, dagegen beim Provider nicht.
 
 
 
== E-Mail-Konfiguration ==
 
TWiki möchte gern E-Mails verschicken z.B. wenn man neue User anlegt oder wenn man geänderte Seiten (Topics) abspeichert. Dazu muss ein SMTP-Server und die erforderliche Userid/Password-Authentification-Geschichte eingerichtet werden. Das ist heutzutage nicht mehr so einfach (No SMTP Relaying, SMTP after POP, SMTP AUTH!!!!!).
 
 
 
 
 
 
 
-- Main.DietrichKracht - 31 Dec 2003
 

Latest revision as of 12:27, 19 April 2020

Has been moved to: http://blog.kr8.de/wiki-twiki-installation-linux/