This is an old revision of the document!
—# Installation
Installation dans un espace web personnel (webspace/page perso)
—## Download & Désarchivage
<verbatim> [jehan@localhost ~/Download] $ wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2008-05-05.tgz
[jehan@localhost ~/sshfs/public] $ tar xvfz ~/Download/dokuwiki-2008-05-05.tgz dokuwiki-2008-05-05/ dokuwiki-2008-05-05/.htaccess.dist dokuwiki-2008-05-05/README dokuwiki-2008-05-05/index.php
[jehan@localhost ~/sshfs/public] $ ls dokuwiki-2008-05-05/ bin COPYING doku.php inc install.php README conf data feed.php index.php lib VERSION </verbatim>
Simplification du nom du repertoire racine
<verbatim> [jehan@localhost ~/sshfs/public] $ mv dokuwiki-2008-05-05 dokuwiki </verbatim>
—## Configuration
cf http://www.dokuwiki.org/config
—### Permissions
Pendant la phase de parametrage/installation il est souhaitable de fermer l'acces au wiki afin que personne vienne pertuber cette fraiche installation qui par défaut est ouverte à tout le monde .
<verbatim> [jehan@localhost ~/sshfs/public/dokuwiki] $ cp .htaccess.dist .htaccess
[jehan@localhost ~/sshfs/public/dokuwiki] $ cat .htaccess <Limit GET POST> Deny from all Allow from 157.159.50.197 </Limit> </verbatim>
—## Installer web interface
http://www-public.it-sudparis.eu/~procacci/dokuwiki/install.php
Premiere alerte:
<verbatim> The installer found some problems, indicated below. You can not continue until you have fixed them.
etc … </verbatim>
Il faut donner les droits a compte (apache = 48 ) executant le serveur httpd sur ces directories Helas pour ce faire il faut etre root ! (trouver mieux …)
<verbatim> [root@cobra /p2v8f1/public/mci/procacci/public/dokuwiki] $ chown -R 48 data/ $ chown 48 lib/plugins/ $ chown 48 conf/ </verbatim>
ensuite cela se passe bien, on tombe sur l'interface web de parametrage initial.
<img src=“%ATTACHURLPATH%/dokuwiki-installer-admin.png” alt=“dokuwiki-installer-admin.png” width='711' height='552' />
ce qui se retrouve dans :
<verbatim> [jehan@localhost ~/sshfs/public/dokuwiki/conf] $ cat local.php <?php /** * Dokuwiki's Main Configuration File - Local Settings * Auto-generated by install script * Date: Fri, 09 Jan 2009 17:41:08 +0100 */ $conf['title'] = 'Jehan\'s wiki'; $conf['lang'] = 'en'; $conf['useacl'] = 1; $conf['superuser'] = '@admin'; </verbatim>
—# Configuration
—## Parametrage du login
—### Forcer un login en https
cf http://www.dokuwiki.org/security
Mettre en place des RewriteRules dans le *.htaccess*:
<verbatim> [jehan@localhost ~/sshfs/public/dokuwiki] $ cat .htaccess RewriteEngine on RewriteBase /dokuwiki RewriteCond %{HTTPS} !on RewriteCond %{QUERY_STRING} do=log RewriteRule ^(.*) https://%{HTTP_HOST}/~procacci/dokuwiki/$1 [R,QSA,L] #remove https after login page RewriteCond %{HTTPS} on RewriteCond %{QUERY_STRING} !do=log RewriteCond %{REQUEST_METHOD} GET RewriteRule ^(.*) http://%{HTTP_HOST}/~procacci/dokuwiki/$1 [R,QSA,L] </verbatim>
—## casification
—### php-cas
dependance sur php-cas
<verbatim> $ yum install php-pear $ yum install php-xml.i386 $ pear install http://www.ja-sig.org/downloads/cas-clients/php/1.0.2RC1/CAS-1.0.2RC1.tgz downloading CAS-1.0.2RC1.tgz … Starting to download CAS-1.0.2RC1.tgz (236,284 bytes) ………………………………………….done: 236,284 bytes install ok: channel:__uri/CAS-1.0.2RC1 </verbatim> cf http://www.esup-portail.org/display/PROJDOCUWIKICAS/CASification+de+Docuwiki <verbatim> [procacci@arvouin ~/sshfs/public/dokuwiki/conf] $ tail -8 dokuwiki.php $conf['authtype'] = 'cas'; /* Ldap Options */ $conf['auth']['ldap']['server'] = 'ldap://ldap3.int-evry.Fr'; $conf['auth']['ldap']['usertree'] = 'ou=people,dc=int-evry,dc=fr'; $conf['auth']['ldap']['userfilter'] = '(uid=%{user})'; </verbatim> <verbatim> [procacci@arvouin ~/sshfs/public/dokuwiki] $ tail -10 doku.php if ($ACT == 'login') { phpCAS::setFixedServiceURL( 'http://www-public.it-sudparis.eu/~procacci/dokuwiki/doku.php?'.$_SERVER[“QUERY_STRING”]); phpCAS::forceAuthentication(); } if($ACT == 'logout') { phpCAS::logout(); } ?> </verbatim> Fichier cas.class.php <verbatim> [procacci@arvouin ~/sshfs/public/dokuwiki/inc/auth] $ cat cas.class.php <? require_once(DOKU_INC.'inc/auth/ldap.class.php'); include_once('CAS/CAS.php'); phpCAS::client(CAS_VERSION_2_0, 'cas.it-sudparis.eu', 443, 'cas'); class auth_cas extends auth_ldap { function auth_cas() { global $conf; $this→cando['external'] = true; $this→auth_ldap(); } function trustExternal($user,$pass,$sticky=false){ global $USERINFO; global $conf; $sticky ? $sticky = true : $sticky = false; sanity check
$session = $_SESSION[$conf['title']]['auth'];
if(phpCAS::isAuthenticated()) { $user = phpCAS::getUser();
if(isset($session)) { $_SERVER['REMOTE_USER'] = $user; $USERINFO = $session['info']; $_SESSION[$conf['title']]['auth']['user'] = $user; $_SESSION[$conf['title']]['auth']['pass'] = $session['pass']; $_SESSION[$conf['title']]['auth']['info'] = $USERINFO; $_SESSION[$conf['title']]['auth']['buid'] = $session['buid']; } else { $USERINFO = $this->getUserData($user); $_SERVER['REMOTE_USER'] = $user; $_SESSION[$conf['title']]['auth']['user'] = $user; $_SESSION[$conf['title']]['auth']['pass'] = $pass; $_SESSION[$conf['title']]['auth']['info'] = $USERINFO; $_SESSION[$conf['title']]['auth']['buid'] = auth_browseruid(); }
return true; }
return false; }
} ?> </verbatim>
—## Template rendering
http://www.dokuwiki.org/template
monobook
http://www.dokuwiki.org/fr:template:monobook
<verbatim> [procacci@arvouin ~/sshfs/public/dokuwiki/lib/tpl] $ wget http://tjgrant.com/wiki/_media/software:dokuwiki:monobook-2008-07-30.tar.bz2?id=software%3Adokuwiki%3Atemplate%3Amonobook&cache=cache
[procacci@arvouin ~/sshfs/public/dokuwiki/lib/tpl] $ tar xvf monobook-2008-07-30.tar
[procacci@arvouin ~/sshfs/public/dokuwiki/conf]
$ tail -1 local.php
$conf['template'] = 'monobook';
</verbatim>
—## Template artic rendering
http://www.dokuwiki.org/template:arctic
user ou group sidebar
http://www.dokuwiki.org/template:arctic#adding_a_user_sidebar
Exemple
<verbatim>
[jehan@calaz ~/sshfs/public/dokuwiki/data/pages/group/mci]
$ cat sidebar.txt
====== @GROUP@ ======
playground
Formatting Syntax
</verbatim>
—## HTML-wiki-converter
installation
<verbatim>
# perl -MCPAN -e 'install HTML::WikiConverter'
# perl -MCPAN -e 'install HTML::WikiConverter::DokuWiki'
</verbatim>
usage
<verbatim>
html2wiki –dialect=DokuWiki /home/jehan/Download/ShibdemoWayf.html > ShibdemoWayf.wiki
</verbatim>
—# Upgrade
http://www.dokuwiki.org/install:upgrade
—## backup
Avant tout, backup de l'ancienne version
<verbatim>
$ cp -a dokuwiki dokuwiki-2008-05
</verbatim>
—## download
<verbatim>
[procacci@arvouin ~/sshfs/public]
$ wget http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2009-02-14b.tgz
[procacci@arvouin ~/sshfs/public]
$ tar xvfz dokuwiki-2009-02-14b.tgz
</verbatim>
—## upgrade
Recopie de la nouvelle version par dessus l'anciene
<verbatim>
[procacci@arvouin ~/sshfs/public]
$ cp -rf dokuwiki-2009-02-14/* dokuwiki/
</verbatim>
—## Fichier de configuration
a priori les config ne sont pas detruite si tout s'est fait dans local.php, mais ici avec CAS par exemple on a touché a conf/dokuwiki.php et doku.php!
above steps are safe when you always adhered to the advice to only change local versions of your config files(like conf/local.php instead of conf/dokuwiki.php)
User data and ACL information are never overwritten because DokuWiki only ships examples (with a .dist extension).
doku.php
<verbatim>
[procacci@arvouin ~/sshfs/public/dokuwiki]
$ diff doku.php ../dokuwiki-2008-05/doku.php
…
> casification from http://www.esup-portail.org/display/PROJDOCUWIKICAS/CASification+de+Docuwiki
if ($ACT == 'login') {
phpCAS::setFixedServiceURL(
… </verbatim>
—## fichier a retirer
Retrait manuel de certain fichiers
<verbatim> [procacci@arvouin ~/sshfs/public] $ cat dokurem.sh #!/bin/bash
for f in `cat dokuwiki-removedFiles` do
if [ -f $f ] ; then
ls -l $f rm $f
fi
[procacci@arvouin ~/sshfs/public] $ bash dokurem.sh -rw-r–r– 1 procacci mci 6791 mai 5 2008 dokuwiki/inc/auth/punbb.class.php -rw-r–r– 1 procacci mci 291 mai 5 2008 dokuwiki/inc/lang/ko/edit.txt_bak -rw-r–r– 1 procacci mci 4409 mai 5 2008 dokuwiki/inc/lang/ko/lang.php_bak -rw-r–r– 1 procacci mci 532 mai 5 2008 dokuwiki/inc/lang/ku/admin_acl.txt -rw-r–r– 1 procacci mci 577 mai 5 2008 dokuwiki/inc/lang/mg/admin_acl.txt -rw-r–r– 1 procacci mci 7743 mai 5 2008 dokuwiki/lib/plugins/importoldchangelog/action.php -rw-r–r– 1 procacci mci 2100 mai 5 2008 dokuwiki/lib/plugins/importoldindex/action.php -rw-r–r– 1 procacci mci 431 mai 5 2008 dokuwiki/lib/plugins/usermanager/images/no_user_edit.png -rw-r–r– 1 procacci mci 1058 mai 5 2008 dokuwiki/lib/plugins/usermanager/images/user_edit.png -rw-r–r– 1 procacci mci 574 mai 5 2008 dokuwiki/lib/tpl/default/UWEB.css
</verbatim>
Création initiale: Main.JehanProcaccia - 09 Jan 2009