Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

machines:installation_dokuwiki_sur_tuxinette [Le 30/01/2019 à 17:26] (Version actuelle)
jaxom créée
Ligne 1: Ligne 1:
 +===== Redémarrage Apache gulliver sur Tuxinette =====
  
 +Se connecter sur gullivermodere@linux-france.org et faire :
 +  /home/lf/gullivermodere/local/httpd/bin/apachectl restart
 +
 +===== Installation de dokuwiki sur tuxinette =====
 +
 +===== Apache 2.2 et PHP =====
 +\\
 +==== Compilation ====
 +\\
 +config.nice [[http://gulliver.eu.org/~scollilieux/migration-wiki/apache_config.nice|d'apache]] et de [[http://gulliver.eu.org/~scollilieux/migration-wiki/php_config.nice|php]]\\
 +
 +<code>
 +mkdir ~/local
 +mkdir ~/tmp
 +cd ~/tmp
 +wget http://mir2.ovh.net/ftp.apache.org/dist//httpd/httpd-2.2.21.tar.bz2
 +bunzip2 -c httpd-2.2.21.tar.bz2 | tar xf -
 +./configure --enable-so --enable-http --enable-expires --enable-rewrite --enable-cgi --prefix=$HOME/local/httpd
 +cd httpd-2.2.21
 +make
 +make install
 +cd ..
 +wget http://fr2.php.net/get/php-5.2.17.tar.bz2/from/this/mirror
 +bunzip2 -c php-5.2.17.tar.bz2 | tar xf -
 +cd ~/tmp/php-5.2.17
 +./configure \
 +--prefix=$HOME/local/httpd/php \
 +--with-config-file-path=$HOME/local/httpd/php \
 +--with-apxs2=$HOME/local/httpd/bin/apxs \
 +--with-bz2 \
 +--with-zlib
 +make
 +make install
 +</code>
 +\\
 +==== Configuration apache ====
 +\\
 +Points importants dans du fichier ''~/local/httpd/conf/httpd.conf'' disponible [[http://gulliver.eu.org/~scollilieux/migration-wiki/httpd.conf|là]]\\
 +
 +<code>
 +Listen 8080
 +[...]
 +ServerAdmin "contact (A) gulliver POING eu POINTG org"
 +[...]
 +# Activation PHP5
 +LoadModule php5_module        modules/libphp5.so
 +AddType application/x-httpd-php php
 +[...]
 +<Files *.php>
 +SetOutputFilter PHP
 +SetInputFilter PHP
 +</Files>
 +[...]
 +DocumentRoot "/home/lf/html/www.linux-france.org"
 +[...]
 +ServerTokens Prod
 +ServerSignature Off
 +[...]
 +Include conf/sites-enabled/
 +</code>
 +\\
 +Pour installer le fichier de conf préparé pour vous avec amour\\
 +<code>
 +cd ~/local/httpd/conf
 +mv httpd.conf httpd.conf.orig
 +wget http://gulliver.eu.org/~scollilieux/migration-wiki/httpd.conf
 +</code>
 +\\
 +Création d'un vhost pour gulliver.eu.org.\\
 +
 +<code>
 +cd ~/local/httpd/conf
 +mkdir sites-available
 +mkdir sites-enabled
 +cd sites-available
 +wget http://gulliver.eu.org/~scollilieux/migration-wiki/gulliver.eu.org
 +cd ..
 +ln -s $HOME/local/httpd/conf/sites-available/gulliver.eu.org $HOME/local/httpd/conf/sites-enabled
 +</code>
 +\\
 +Pour info, contenu de ce fichier :\\
 +<code>
 +cat sites-available/gulliver.eu.org
 +NameVirtualHost *:8181
 +<VirtualHost *:8181>
 + ServerAdmin "contact At gulliver Dot eu Dot org"
 + ServerName gulliver.eu.org
 + ServerAlias *.gulliver.eu.org
 +
 + DocumentRoot /home/lf/scollilieux/local/httpd/htdocs
 + ErrorLog logs/gulliver.eu.org.error.log
 + LogLevel warn
 + CustomLog logs/gulliver.eu.org.access.log combined
 +
 + <Directory /home/lf/scollilieux/local/httpd/htdocs>
 + DirectoryIndex wiki/doku.php index.php
 + RewriteEngine on
 + RewriteBase /
 + RewriteRule ^(lib/.*)     wiki/$1
 + RewriteRule ^_media/(.*)  wiki/lib/exe/fetch.php?media=$1  [QSA,L]
 + RewriteRule ^_detail/(.*) wiki/lib/exe/detail.php?media=$1  [QSA,L]
 + RewriteRule ^_export/([^/]+)/(.*) wiki/doku.php?do=export_$1&id=$2  [QSA,L]
 + RewriteRule ^feed.php     wiki/feed.php
 + Include /home/lf/scollilieux/local/httpd/conf/wikini_dokuwiki_re
 +direct.txt
 + RewriteCond %{REQUEST_FILENAME} !-f
 + RewriteCond %{REQUEST_FILENAME} !-d
 + RewriteRule (.*) wiki/doku.php?id=$1  [QSA,L]
 + </Directory>
 + <Directory /home/lf/scollilieux/local/httpd/htdocs/wiki>
 + AllowOverride AuthConfig FileInfo Limit
 + Options -Indexes -MultiViews +FollowSymLinks
 + </Directory>
 +
 + <LocationMatch "/(data|conf|bin|inc)/">
 + Order allow,deny
 + Deny from all
 + Satisfy All
 + </LocationMatch>
 +</VirtualHost>
 +</code>
 +\\
 +On redémarre apache :\\
 +
 +<code>
 +~/local/httpd/bin/apachectl graceful
 +</code>
 +\\
 +Le fichier ` $HOME/local/httpd/conf/wikini_dokuwiki_redirect.txt` permet de gérer les redirections entre l'ancien wiki et le nouveau.\\
 +
 +===== Installation dokuwiki =====
 +\\
 +==== Téléchargement et installation ====
 +\\
 +<code>
 +cd ~/local/httpd/htdocs
 +wget -O - "http://www.splitbrain.org/_media/projects/dokuwiki/dokuwiki-2012-01-25.tgz" | tar zxf -
 +mv dokuwiki-2012-01-25 wiki
 +</code>
 +\\
 +==== Configuration ====
 +\\
 +
 +<code>
 +cd ~/local/httpd/htdocs/wiki/conf/
 +wget -O local.php http://gulliver.eu.org/~scollilieux/migration-wiki/local.php.txt
 +wget -O users.auth.php http://gulliver.eu.org/~scollilieux/migration-wiki/users.auth.php.txt
 +wget -O acl.auth.php http://gulliver.eu.org/~scollilieux/migration-wiki/acl.auth.php.txt
 +</code>
 +\\
 +Suppression du fichier d'installation, inutile car la conf est fournie.\\
 +
 +<code>
 +cd ~/local/httpd/htdocs/wiki/
 +rm install.php
 +</code>
 +\\
 +==== Personnalisation ====
 +\\
 +=== Thème ===
 +\\
 +Installation du thème [http://www.dokuwiki.org/template:a_new_day?s[]=newday newday]\\
 +
 +<code>
 +cd ~/local/httpd/htdocs/wiki/lib/tpl
 +wget -O newday.zip http://blog.chirripo.nl/wp-content/uploads/dokuwiki_template_newday_20100921.zip
 +unzip newday.zip
 +cd newday/images
 +mv favicon.ico favicon.ico.orig
 +wget -O favicon.ico  http://gulliver.eu.org/~scollilieux/gulliver-favicon.ico
 +</code>
 +\\
 +
 +=== Plugins ===
 +Installation du plugin [http://www.dokuwiki.org/plugin:wikicalendar wikicalendar]\\
 +
 +<code>
 +cd ~/local/httpd/htdocs/wiki/lib/plugins
 +wget -O - "http://cloud.github.com/downloads/chimeric/dokuwiki-plugin-wikicalendar/plugin-wikicalendar.tgz" | tar zxf -
 +</code>
 +\\
 +===== migration du wikini -> dokuwiki =====
 +\\
 +==== migration des données ====
 +\\
 +Téléchargement des logiciels nécessaires depuis [https://gitorious.org/migrate-to-doku/ gitorious]. Tous les scripts seront exécutés depuis le répertoire $HOME/migration-wiki\\
 +
 +<code>
 +mkdir ~/migration-wiki
 +cd ~/migration-wiki
 +wget -O - http://gitorious.org/migrate-to-doku/migrate-to-doku/archive-tarball/master | tar zxf - 
 +mv migrate-to-doku-migrate-to-doku/* .
 +rm -r migrate-to-doku-migrate-to-doku/
 +</code>
 +\\
 +Utilisation du script ''synchronize.sh''. Ce script ne fait pas partie de l'archive gitorious, il est adapté à tuxinette.\\
 +
 +Le mot de passe de la base de données devra être stocké dans ''$HOME/var/tmp/mysql_gull.pass''.\\
 +
 +\\
 +<code>
 +#!/bin/bash
 +# (C) Sylvain Collilieux 2011
 +# Licence WTFPL http://sam.zoy.org/wtfpl/
 +
 +
 +# Synchronizes data between wikini and dokuwiki
 +
 +# If $1=1 : complete export from wikini, generates rewrite_rules and comparison page
 +# Else : only data from last dokuwiki change are exported (no rewrite or comparison
 +# because there are not complete).
 +
 +./update_dokuwiki_data.sh $1
 +
 +echo "Copie vers dokuwiki"
 +tar --directory dokuwiki/data -cf - . | tar -C ~/local/httpd/htdocs/wiki/data/ -xf -
 +
 +if [ "$1" == "1" ]
 +then
 + echo Copie du fichier de Redirection
 + sh rewrite_rules.sh
 + cp wikini_dokuwiki_redirect.txt ~/local/httpd/conf/
 +
 + echo "Copie du fichier de comparaison des pages"
 + sh comparaison_index.sh
 + cp comparaison_wikini_dokuwiki.html ~/html/
 +fi
 +</code>
 +\\
 +<code>
 +cd $HOME/migration-wiki
 +sh synchronize.sh 1
 +</code>
 +\\
 +==== Synchronisation de wikini -> dokuwiki ====
 +\\
 +Une synchronisation complète a lieu 1 fois par jour. Toutes les 10 minutes de minuit à 3h et de 7h à minuit, il y a une synchronisation partielle.\\
 +
 +La synchonisation complète peut être utile en cas de changement dans le script de conversion des pages (''migrate-to-doku.py''). C'est la raison de son exécution quotidienne. Cette synchonisation peut également se faire à la demande.\\
 +
 +<code>
 +crontab -l
 +15 4 * * * cd migration_wiki ; bash synchronize.sh 1 >/dev/null 2>&1
 +*/10 0-3 * * * cd migration_wiki ; bash synchronize.sh >/dev/null 2>&1
 +*/10 7-23 * * * cd migration_wiki ; bash synchronize.sh >/dev/null 2>&1
 +</code>
 +==== Migration du site (url) ====
 +\\
 +Dans cet exemple http://gulliver.eu.org/ devient le wiki (on enlève /wiki/).\\
 +
 +Récupération du  [http://www.linux-france.org/prj/lfoyer/doc/htm/cvs.fr.htm#s4 site statique de Gulliver]\\
 +
 +<code>
 +CVSROOT=:ext:cvs@linux-france.org:/home4/lf/cvs/
 +CVS_RSH=ssh
 +export CVSROOT CVS_RSH
 +cd ~/tmp && mkdir cvs_work && cd cvs_work
 +cvs checkout www.linux-france.org
 +cd cvs_work/www.linux-france.org/lug/gulliver/
 +</code>
 +\\
 +Remplacer fichier ''.htaccess'' par [[http://gulliver.eu.org/~scollilieux/migration-wiki/htaccess_final|celui-ci]]\\
 +
 +\\
 +Les ''RewriteCond %{REQUEST_URI} !^/ml-archives/.*'' permettent de ne pas réécrire l'URL pour les parties statiques existantes (par exemple les archives des listes).\\
 +
 +Envoi des données sur lfo\\
 +<code>
 +cvs commit 'Migration .htaccess / de Gulliver'
 +ssh tonlogin@linux-france.org ~lf/bin/authsync_demand
 +</code>
 +\\
 +La dernière commande permet de pousser le contenu du CVS sur le site (sinon attendre 20 de chaque heure).\\
 +
 +===== accès à wikini =====
 +\\
 +Le but est de permettre l'accès à l'ancien wiki avec l'url http://gulliver.eu.org/wikini/\\
 +
 +Dans le [CVS de Gulliver http://www.linux-france.org/prj/lfoyer/doc/htm/cvs.fr.htm#s4] :\\
 +
 +<code>
 +www.linux-france.org/lug/gulliver
 +mkdir wikini
 +cp wiki/.htacess wikini/
 +cvs add wikini/
 +cvs add wikini/.htaccess
 +</code>
 +Le contenu du ''.htaccess'' :\\
 +
 +<code>
 +RewriteEngine on
 +RewriteRule .*\.css - [L]
 +RewriteRule .*\.png - [L]
 +RewriteRule .*\.php.* - [L]
 +RewriteRule (.*) /~scollilieux/wiki/wakka.php?wiki=$1 [QSA,L,NE,PT]
 +</code>
 +\\
 +====== The Button ======
 +\\
 +À ce stade, dokuwiki devrait être à jour avec les données de wikini. Pour finaliser la migration, il faut :\\
 +
 +  * supprimer les tâches de synchronisation de la cron\\
 +  * modifier le fichier .htaccess de la racine du site pour activer le proxy\\
 +
 +Ce script devra être lancé par le compte qui héberge dokuwiki. Pour lancer ce script, il est nécessaire d'être connecté sur tuxinette avec sa clef SSH et d'activer l'agent forwarding : ''ssh -A linux-france.org''.\\
 +
 +%%<img src="http://gulliver.eu.org/~scollilieux/migration-wiki/bouton.png" alt="LE bouton" border="0" />%%[[http://gulliver.eu.org/~scollilieux/migration-wiki/bouton.sh| bouton.sh]]
 +
 +Une étape n'a pas été faite avec ce script car faite après la migration. Le fichier .htaccess disponible sur http://gulliver.eu.org/~scollilieux/migration-wiki/wiki_htaccess doit être mise dans le CVS en remplacement du fichier %%www.linux-france.org/lug/gulliver/wiki/.htaccess%%. C'est ce fichier qui contient les redirections entre les anciens noms de pages et les nouveaux (le tout issu du script de migration).
 
machines/installation_dokuwiki_sur_tuxinette.txt · Dernière modification: Le 30/01/2019 à 17:26 par jaxom     Haut de page
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Design by Chirripó