|
|
(6 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | = TWiki das WikiWiki für mein Knowledge-Management =
| + | This page has been moved to: http://blog.kr8.de/wiki-website-twiki/ |
− | Siehe auch: TWikiInstallationWindows
| |
− | * Was ist eigentlich ein [[WikiWikiWebMain|WikiWikiWeb]]?
| |
− | * Wofür ich das WikiWiki benutzen will:... [[WikiWikiWebAuswahlverfahren]]
| |
− | * Warum ich TWiki für mich ausgesucht habe... [[WikiWikiWebAuswahlverfahren]]
| |
− | | |
− | == Installationsgeschichte ==
| |
− | Bei der ersten Installation von TWiki habe ich mich genau an das TWiki:TWiki.WindowsInstallCookbook gehalten. Nach vier Monaten der Nutzung haben mich nun aber doch einige Dinge an der Art der Erst-Installation gestört:
| |
− | * Installationsordner ausserhalb des Document-Root von [[Apache|Apache]]
| |
− | * Langsame Ausführung der TWiki-Perl-Skripts im CGI-Standard-Modus
| |
− | * Starke Abhängigkeit von [[Cygwin|Cygwin]] (Cygwin [[Perl|Perl]], Cygwin RCS, Cygwin Mountpoints)
| |
− | * Shebang-Zeile in den [[Perl|Perl]]-Scripts
| |
− | | |
− | Folgende Veränderungen der Installation habe ich heute durchgeführt:
| |
− | * TWiki-Dateipfad: d:\home\kracht\www\twiki ( URL: http://localhost/twiki )
| |
− | * ActivePerl 5.6 (als Voraussetzung für ''mod_perl'')
| |
− | * Installation von ''mod_perl'' für die schnelle Ausführung von [[Perl|Perl]]-Scripts unter [[Apache|Apache]]
| |
− | * Angabe von Datei-Pfaden nicht mehr bezogen auf Cygwin-Mounts (/twiki/bin/...), sondern als Windows Dateipfade (d:/home/kracht/www/twiki/bin/...)
| |
− | | |
− | === 2007-04-08 Installation der Version 4.1.1 ===
| |
− | Zuerst in der alten TWiki-Version (02 Sept 2004 1742 "Cairo")
| |
− | * TWiki.TwikiPreference: SMTPMAILHOST = localhost
| |
− | | |
− | Installationsbeschreibung: [[http://TWiki.org/cgi-bin/view/TWiki/TWikiDocumentation|http://TWiki.org/cgi-bin/view/TWiki/TWikiDocumentation]]
| |
− | * Apache: 1.3.29
| |
− | * Perl: 5.6 ---> 5.8
| |
− | * Installationsverzechnis: e:/var/www/htdocs/wiki
| |
− | * Das File e:/var/www/htdocs/wiki/bin/LocalLib.cfg aus dem Txt-File erstellen
| |
− | * Apache httpd.conf: ScriptAlias und Alias einrichten (als erster Schritt)
| |
− | * Im Skript-File "configure" die Shebang-Zeile ändern auf: #!/perl/bin/perl ....
| |
− | * Das Skript "configure" starten ([[http://braunbaer.kr8.de/wiki|http://braunbaer.kr8.de/wiki]])
| |
− | ** Pfade eintragen
| |
− | ** LoginManager = TemplateLogin
| |
− | ** PasswordManager = HtPasswdUser
| |
− | ** ...
| |
− | * Shebang-Zeile in allen Perl-Skripten in wiki/bin ändern
| |
− | * Passwort-File .htpasswd nach wiki/data/.htpasswd kopieren
| |
− | * Kracht-Wiki kopieren von twiki/data/Kracht nach wiki/data/Kracht
| |
− | * User einrichteen
| |
− | * User-Berechtigungsprüfung per Apache einrichten ("AuthType Basic" für wiki/bin in httpd.conf oder .htaccess)
| |
− | * ...
| |
− | | |
− | Weitere Änderungen der Konfiguration:
| |
− | * {MapUserToWikiName} $TWiki::cfg{MapUserToWikiName} = 0;
| |
− | * {Register}{NeedVerification} $TWiki::cfg{Register}{NeedVerification} = 0;
| |
− | * {Htpasswd}{Encoding} $TWiki::cfg{Htpasswd}{Encoding} = 'sha1';
| |
− | * {SafeEnvPath} $TWiki::cfg{SafeEnvPath} = 'd:\\Programme\\gnurcs\\bin\\win32;c:\\WINNT\\system32';
| |
− | | |
− | Perl Module
| |
− | * Active Perl: PPM install CGI-Session .....
| |
− | | |
− | === 2004-11-27 Installation der Version 02 Sep 2004 ===
| |
− | Auf meinem neuen PC, den ich '''Braunbaer''' getauft habe, installiere ich die neue Version (02 Sep 2004) von TWiki. Auf diese war ich aufmerksam geworden, weil die TWiki-Installation (Version 01 Feb 2003) bei meinem WebProvider-Provider Westhost ein Sicherheitsproblem hatte und gehackt wurde.
| |
− | Die Installation auf Braunbaer mit Windows2000 will ich so einfach und robust wie möglich machen, d.h. ganz ohne [[Cygwin|Cygwin]] und mit einem stabilen RCS (also nicht RCSLite) auf Win32-Basis. Das TWiki-Modul '''RcsWrap.pm''' enthält aber leider noch einen gemeinen Fehler, den ich erst nach mehreren Stunden der Analyse finde:
| |
− | <pre>
| |
− | Zeile 106: #TODO set from TWiki.cfg
| |
− | Zeile 107: my $cmdQuote = "'";
| |
− | </pre>
| |
− | Für Windows2000 muss das geändert werden in:
| |
− | <pre>
| |
− | Zeile 106: #TODO set from TWiki.cfg
| |
− | Zeile 107: my $cmdQuote = "\"";
| |
− | </pre>
| |
− | Dann funktionieren die RCS-Funktionalitäten von TWiki.
| |
− | | |
− | '''Peter Thoeny möge sich schämen, wie vielen Menschen hat er wie viele Stunden ihres Lebens gestohlen?'''
| |
− | | |
− | ---------------
| |
− | == Neue Installation auf ComputerBraunbaer (ohne Cygwin) ==
| |
− | * Definitive Software Library ID: '''TWiki'''
| |
− | * Name: TWiki
| |
− | * Version: 02 Sep 2004 (Security Update)
| |
− | * Hersteller/Bezugsquelle: Peter Thoeny http://twiki.org
| |
− | * Systemvoraussetzungen: [[Perl|Perl]], GNU [[RCS|RCS]], [[Apache|Apache]], UnxTools
| |
− | * Installations-Ordner: E:\var\www\htdocs\twiki
| |
− | * Konfiguration: E:\var\www\htdocs\twiki\bin\setlib.cfg (Einzelheiten s.u.)
| |
− | ** Prüfen der Installation: http://localhost/twiki/bin/testenv
| |
− | ** RCS: ohne Cygwin, auf DOS-Ebene mit GNURCS und den UnxTools
| |
− | ** RCS-Locks: Die Locks sind auf User '''dkracht''', deshalb muss der Apache-Service auch unter dieser UserId laufen
| |
− | | |
− | === Konfigurationsdatei: ...\www\htdocs\twiki\bin\setlib.cfg ===
| |
− | <pre>
| |
− | # -------------- Change these settings if required
| |
− | | |
− | # Path to lib directory containing TWiki.pm. Set to absolute file path:
| |
− | $twikiLibPath = 'e:/var/www/htdocs/twiki/lib';
| |
− | | |
− | # Path to local Perl modules (e.g. under home directory for users
| |
− | # without 'root' on Unix/Linux). Uncomment and set if needed:
| |
− | # $localPerlLibPath = '';
| |
− | </pre>
| |
− | | |
− | === Konfigurationsdatei: ...\www\twiki\lib\TWiki.cfg ===
| |
− | <pre>
| |
− | # variables that need to be changed when installing on a new server:
| |
− | # '''<tt>==============================================================</tt>'''
| |
− | # ---- Windows paths should normally be written as "c:/foo" not "c:\foo"
| |
− | # ---- (which doesn't do what you may think it does). You can use '\'
| |
− | # ---- without problems inside single quotes, e.g. 'c:\foo'.
| |
− | $defaultUrlHost = "http://braunbaer.kr8.de";
| |
− | # %SCRIPTURLPATH% : cgi-bin URL path for TWiki:
| |
− | $scriptUrlPath = "/twiki/bin";
| |
− | # %PUBURLPATH% : Public data URL path for TWiki (root of attachments) :
| |
− | $pubUrlPath = "/twiki/pub";
| |
− | # Public data directory (file path not URL), must match $pubUrlPath :
| |
− | $pubDir = "e:/var/www/htdocs/twiki/pub";
| |
− | # Template directory :
| |
− | $templateDir = "e:/var/www/hatdocs/twiki/templates";
| |
− | # Data (topic files) root directory (file path not URL):
| |
− | $dataDir = "e:/var/www/htdocs/twiki/data";
| |
− | # Log directory for log files, debug and warning files. Default "$dataDir" :
| |
− | $logDir = "$dataDir";
| |
− | | |
− | $saveEnvPath = 'D:\Programme\gnurcs\bin\win32;c:\WINNT\system32';
| |
− | $rcsDir = "D:/Programme/gnurcs/bin/win32";
| |
− | $StoreTopicImpl = "RcsWrap";
| |
− | $lsCmd = 'D:\Programme\gnurcs\bin\win32\ls'; (aus Sourceforge: UnxTools)
| |
− | $egrepCmd = 'D:\Programme\gnurcs\bin\win32\egrep'; (aus Sourceforge: UnxTools)
| |
− | $fgrepCmd = 'D:\Programme\gnurcs\bin\win32\fgrep'; (aus Sourceforge: UnxTools)
| |
− | | |
− | $editLockTime = "300";
| |
− | </pre>
| |
− | | |
− | === Konfigurationsdatei: ...\www\twiki\bin\.htaccess ===
| |
− | Das war noch eine kleine Gemeinheit: Was ich auch in die Apache-Konfigurationsdatei ''httpd.conf'' eingetragen habe, egalweg wollte '''mod_perl''' für die Scripts hier nicht zur Anwendung kommen. Erst das Auskommentieren von '''SetHandler cgi-script''' brachte dann den Erfolg.
| |
− | <pre>
| |
− | # bin/.htaccess.txt
| |
− | #
| |
− | # Controls access to TWiki scripts - rename this to '.htaccess' to make
| |
− | # Apache use it.
| |
− | | |
− | # Use CGI & Perl to handle all files in 'bin' directory, i.e. run as scripts
| |
− | # - this should remove the need to rename files to end in '.pl' etc,
| |
− | # if your web hosting provider permits this. Remove if using mod_perl.
| |
− | ####SetHandler cgi-script
| |
− | </pre>
| |
− | | |
− | === User-Ids und Passwörter ===
| |
− | Für die Ausführung bestimmter Perl-Scripts (z.B. edit, save) wird eine Authentifizierung verlangt. User-Ids und Passwörter sin in der Datei '''.htpasswd''' gespeichert. Diese Datei wird mit Hilfe des zu [[Apache|Apache]] gehörigen Dienstprogramms '''htpasswd.exe''' erstellt. Standardmässig wird von den Passwörtern ein MD5-Hash gespeichert (wahlweise auch ein SHA1-Hash).
| |
− | * htpasswd -cs .htpasswd dkracht
| |
− | * htpasswd -s .htpasswd DietrichKracht
| |
− | Die obigen Befehle erzeugen eine Passwort-Datei '''.htpasswd''' mit den Usern "dkracht" und "DietrichKracht" und entsprechenden Passwörtern als SHA1-Hashs. Diese Datei muss dann nach /twiki/data kopiert werden... (s.u. AuthUserFile)
| |
− | | |
− | <pre>
| |
− | # Password file for TWiki users
| |
− | #
| |
− | # The path here must be a system file pathname, not a URL - first part should
| |
− | # match the $dataDir setting in TWiki.cfg
| |
− | AuthUserFile e:/var/www/htdocs/twiki/data/.htpasswd
| |
− | AuthName 'Enter your WikiName: (First name and last name, no space, no dots, capitalized, e.g. JohnSmith). Cancel to register if you do not have one.'
| |
− | AuthType Basic
| |
− | | |
− | # File to return on access control error (e.g. wrong password)
| |
− | # The path here must be a URL path, not a file pathname - first part should
| |
− | # match the $scriptUrlPath in TWiki.cfg
| |
− | ErrorDocument 401 /twiki/bin/oops/TWiki/TWikiRegistration?template=oopsauth
| |
− | </pre>
| |
− | | |
− | === Apache Konfiguration ===
| |
− | Für die Lauffähigkeit von TWiki mussen in der Apache-Konfigurationsdatei ''https.conf'' folgende Eintragungen vorgenommen werden.
| |
− | <pre>
| |
− | <IfModule mod_env.c>
| |
− | SetEnv TZ CET-1EST
| |
− | SetEnv RCSINIT -x,v/
| |
− | SetEnv TEMP e:/tmp
| |
− | SetEnv TMP e:/tmp
| |
− | SetEnv LOGNAME dkracht
| |
− | # SetEnv PERL5SHELL "cmd.exe /x/c"
| |
− | </IfModule>
| |
− | </pre>
| |
− | | |
− | === TWiki.TWikiPreferences ===
| |
− | Im Dokument (Topic) TWiki.TWikiPreferences werden noch folgende Parameter eingestellt:
| |
− | * WIKIWEBLIST = Kracht Consulting TWiki Sandbox
| |
− | * WEBBGCOLOR = #C0C0C0
| |
− | * WIKIWEBMASTER = xxx@kr8.org
| |
− | * ALLOWTOPICCHANGE = Main.TWikiAdminGroup
| |
− | | |
− | === WebPreferences ===
| |
− | Im Dokument (Topic) Kracht.WebPreferences werden folgende Parameter eingestellt:
| |
− | * SKIN = kracht
| |
− | Diese in der alten TWiki-Version entwickelte Skin besteht aus folgenden Template-Dateien:
| |
− | * attach.kracht.tmpl
| |
− | * edit.kracht.tmpl
| |
− | * preview.kracht.tmpl
| |
− | * print.kracht.tmpl
| |
− | * rdiff.kracht.tmpl
| |
− | * search.kracht.tmpl
| |
− | * view.kracht.tmpl
| |
− | Diese Skin-Templates liegen im Ordner /twiki/templates
| |
− | | |
− | === Cascading Stylesheet (CSS) ===
| |
− | Zur Gestaltung der Optik wurde ein eignenes Stylesheet '''blue.css''' entwicklet, dies liegt in '''/twiki/css'''.
| |
− | | |
− | Damit dieses Stylesheet auch für alle Steiten verwendet wird, habe ich zwei Zeilen in '''twiki.tmpl''' einfügen müssen(?).
| |
− | | |
− | === Letzte Aktionen ===
| |
− | Der User Main.DietrichKracht ist anzulegen, einzutragen in Main.TWikiUsers und in Main.TWikiAdminGroup
| |
− | | |
− | ----------------
| |
− | == Installation auf lonzo.kr8.de ==
| |
− | * Definitive Software Library ID: '''TWiki'''
| |
− | * Name: TWiki
| |
− | * Version: 01 Feb 2003
| |
− | * Hersteller/Bezugsquelle: Peter Thoeny http://twiki.org
| |
− | * Installations-Ordner: D:\home\kracht\www\twiki
| |
− | * Konfiguration: D:\home\kracht\www\twiki\bin\setlib.cfg (Einzelheiten s.u.)
| |
− | * Systemvoraussetzungen: [[Perl|Perl]], [[RCS|RCS]], [[Apache|Apache]], [[Cygwin|Cygwin]], UnxTools
| |
− | | |
− | === Konfigurationsdatei: ...\www\twiki\bin\setlib.cfg ===
| |
− | <pre>
| |
− | # -------------- Change these settings if required
| |
− | | |
− | # Path to lib directory containing TWiki.pm. Set to absolute file path:
| |
− | $twikiLibPath = 'd:/home/kracht/www/twiki/lib';
| |
− | | |
− | # Path to local Perl modules (e.g. under home directory for users
| |
− | # without 'root' on Unix/Linux). Uncomment and set if needed:
| |
− | # $localPerlLibPath = '';
| |
− | </pre>
| |
− | | |
− | === Konfigurationsdatei: ...\www\twiki\lib\TWiki.cfg ===
| |
− | <pre>
| |
− | # variables that need to be changed when installing on a new server:
| |
− | # '''<tt>==============================================================</tt>'''
| |
− | # ---- Windows paths should normally be written as "c:/foo" not "c:\foo"
| |
− | # ---- (which doesn't do what you may think it does). You can use '\'
| |
− | # ---- without problems inside single quotes, e.g. 'c:\foo'.
| |
− | $wikiHomeUrl = "http://localhost/twiki";
| |
− | # URL for TWiki host : (e.g. "http://myhost.com:123")
| |
− | $defaultUrlHost = "http://localhost";
| |
− | # %SCRIPTURLPATH% : cgi-bin URL path for TWiki:
| |
− | $scriptUrlPath = "/twiki/bin";
| |
− | # %PUBURLPATH% : Public data URL path for TWiki (root of attachments) :
| |
− | $pubUrlPath = "/twiki/pub";
| |
− | # Public data directory (file path not URL), must match $pubUrlPath :
| |
− | $pubDir = "d:/home/kracht/www/twiki/pub";
| |
− | # Template directory :
| |
− | $templateDir = "d:/home/kracht/www/twiki/templates";
| |
− | # Data (topic files) root directory (file path not URL):
| |
− | $dataDir = "d:/home/kracht/www/twiki/data";
| |
− | # Log directory for log files, debug and warning files. Default "$dataDir" :
| |
− | $logDir = "$dataDir";
| |
− | </pre>
| |
− | | |
− | === Konfigurationsdatei: ...\www\twiki\bin\.htaccess ===
| |
− | Das war noch eine kleine Gemeinheit: Was ich auch in die Apache-Konfigurationsdatei ''httpd.conf'' eingetragen habe, egalweg wollte '''mod_perl''' für die Scripts hier nicht zur Anwendung kommen. Erst das Auskommentieren von '''SetHandler cgi-script''' brachte dann den Erfolg.
| |
− | <pre>
| |
− | # bin/.htaccess.txt
| |
− | #
| |
− | # Controls access to TWiki scripts - rename this to '.htaccess' to make
| |
− | # Apache use it.
| |
− | | |
− | # Use CGI & Perl to handle all files in 'bin' directory, i.e. run as scripts
| |
− | # - this should remove the need to rename files to end in '.pl' etc,
| |
− | # if your web hosting provider permits this. Remove if using mod_perl.
| |
− | ####SetHandler cgi-script
| |
− | </pre>
| |
− | | |
− | === User-Ids und Passwörter ===
| |
− | Für die Ausführung bestimmter Perl-Scripts (z.B. edit, save) wird eine Authentifizierung verlangt. User-Ids und Passwörter sin in der Datei '''.htpasswd''' gespeichert. Diese Datei wird mit Hilfe des zu [[Apache|Apache]] gehörigen Diensprogramms '''htpasswd.exe''' erstellt. Standardmässig wird vonden Passwörtern ein MD5-Hash gespeichert (wahlweise auch ein SHA1-Hash).
| |
− | * htpasswd -cs .htpasswd dkracht
| |
− | * htpasswd -s .htpasswd DietrichKracht
| |
− | Die obigen Befehle erzeugen eine Passwort-Datei '''.htpasswd''' mit den Usern "dkracht" und "DietrichKracht" und entsprechenden Passwörtern als SHA1-Hashs. Diese Datei muss dann nach /twiki/data kopiert werden... (s.u. AuthUserFile)
| |
− | | |
− | <pre>
| |
− | # Password file for TWiki users
| |
− | #
| |
− | # The path here must be a system file pathname, not a URL - first part should
| |
− | # match the $dataDir setting in TWiki.cfg
| |
− | AuthUserFile d:/home/kracht/twiki/data/.htpasswd
| |
− | AuthName 'Enter your WikiName: (First name and last name, no space, no dots, capitalized, e.g. JohnSmith). Cancel to register if you do not have one.'
| |
− | AuthType Basic
| |
− | | |
− | # File to return on access control error (e.g. wrong password)
| |
− | # The path here must be a URL path, not a file pathname - first part should
| |
− | # match the $scriptUrlPath in TWiki.cfg
| |
− | ErrorDocument 401 /twiki/bin/oops/TWiki/TWikiRegistration?template=oopsauth
| |
− | </pre>
| |
− | | |
− | === Apache Konfiguration ===
| |
− | Für die Lauffähigkeit von TWiki mussen in der Apache-Konfigurationsdatei ''https.conf'' folgende Eintragungen vorgenommen werden.
| |
− | <pre>
| |
− | <IfModule mod_env.c>
| |
− | SetEnv LOGNAME system
| |
− | SetEnv PERL5SHELL "d:/Programme/cygwin/bin/bash.exe -c"
| |
− | SetEnv PERL5LIB "d:/home/kracht/www/twiki/bin"
| |
− | </IfModule>
| |
− | </pre>
| |
− | | |
− | | |
− | -----------
| |
− | | |
− | == Kategorien mit TWiki-WebForms ==
| |
− | Als erstes muss für das betroffene TWiki-Web (hier: "Kracht") die Funktionalität "WebForms" aktiviert werden. Das geschieht im Dokument ("Topic") WebPreferences durch die Angabe:
| |
− | * Set WEBFORMS = form1, form2, form3,...
| |
− | | |
− | Als Nächstes müssen dann die Forms angelegt werden (hier: WebForm) :
| |
− | <blockquote style="background-color: yellow">
| |
− | {| class=wikitable
| |
− | |-
| |
− | | '''Name''' || '''Type''' || '''Size''' || '''Values''' || '''Tootip message'''
| |
− | |-
| |
− | | TopicClassification || text || 32 || | Cassification
| |
− | |-
| |
− | | TopicSummary || text || 32 || | Summary
| |
− | |-
| |
− | | DefinitiveSoftwareLibrary || checkbox || 1 || DSL || Is this an entry to the DSL?
| |
− | |-
| |
− | | ClientRelation || text || 32 || | What client is related to this?
| |
− | |-
| |
− | | RelatedTopics || text || 32 || | What topics are related to this?
| |
− | |}
| |
− | </blockquote>
| |
− | | |
− | Als Drittes müssen dann die bereits vorhandenen Dokumente (Topics) mit "Edit" und "Add form" nachträglich mit den beschreibenden Informationen der WebForm (Kategorien u.a.) versehen werden.
| |
− | | |
− | Als Viertes werden dann Abfrage-Dokumente für die Kategorien angelegt (mit "%SEARCH....") z.B. [[TopicClassification]].
| |
− | | |
− | | |
− | -- Main.DietrichKracht - 01 May 2004
| |