FIXME tag
----
====== Installation complète de la documentation ubuntu-fr en local ======
L'objectif de cette page est de mettre en place l'outil complet de la documentation sur une machine en local pour :
* faire des tests de plugins
* installer et tester des thèmes comme expliqué sur [[:utilisateurs:fabux:emeht|cette page]] qui fait suite à celle-ci
* faire des essais d'export
* connaître un peu plus les arcanes du système
* ...
et pourquoi pas [[:groupes:ubuntu-fr-webteam#comment_nous_aider|nous aider]] à signaler un bug et améliorer le code.
Si vous souhaitez uniquement avoir une version légère de la documentation, et ce sans connexion internet, orientez-vous plutôt vers l'[[http://download.kiwix.org/zim/other/ubuntudoc_fr_all_2015-12.zim|archive Zim]] qui fait à peine 500Mo mais date de décembre 2015.
Pour préserver votre environnement, vous pouvez mettre en place ce qui suit sur [[:virtualbox]]. Cette méthode a d'ailleurs été testé en 64bits sur [[:Lubuntu]] desktop et [[:Budgie]].
===== Pré-requis =====
Pour faire marcher [[https://www.dokuwiki.org/requirements|dokuwiki]], il faut :
* Un serveur qui supporte php. Pour la suite [[:Lighttpd]] a été choisi pour sa légèreté.
* Modifier les fichiers //10-fastgi.conf// et //15-fastcgi-php.conf// dans **/etc/lighttpd/conf-avalaible** (en faire une [[:tutoriel:comment_sauver_et_restaurer_un_fichier|sauvegarde]] avant) comme indiqué sur la page du serveur.
* Recharger les modules et relancer lighttpd
* Installation minimale de [[:php]]. Pour la suite il s'agira de la version 7.0.
* Installer [[:git]].
Pour la suite, les fichiers seront placés dans ''/var/www/html/ubuntu-fr'' et non ''/var/www/ubuntu-fr'' ou alors définir dans **/etc/lighttpd/lighttpd.conf** le bon " document-root "
server.document-root = "/var/www/html/"
===== Installation de la documentation =====
==== Les fichiers ====
Il faudra évidemment les fichiers de la //doc// accessible depuis [[https://launchpad.net/ubuntu-fr-doc|sa page launchpad]].\\
Depuis le dossier où vous souhaitez installer la documentation (ici ** /var/www/html/ubuntu-fr/**), saisissez dans un [[:terminal]] la [[:commande_shell|commande]] suivante :
git clone https://git.launchpad.net/ubuntu-fr-doc
En cas de message d'erreur réessayez après avoir ajouté ceci dans **~/.gitconfig** [url "git+ssh://VotreNomSurLP@git.launchpad.net/"]
insteadof = lp:
[user]
email = votreEmail@hebergeur.com
name = VotreNomSurLP
Suivi de source .gitconfig
Il faudra également le dossier des données nommés //data//. Ce dossier au format //[[:tar|.tar.gz]]// ((environ 4Go à demander auprès des administrateurs)) sera à [[:archivage#graphiquement|décompresser]] dans le dossier précédemment créé, à savoir **/var/www/html/ubuntu-fr/ubuntu-fr-doc/**.
Il est possible de positionner les données dans un autre dossier et faire un lien symbolique vers celui-ci nommé **data** ln -s /lieu/des/datas data
Attention cependant aux [[:droits]].
Il existe aussi la solution de modifier dans le fichier **local.protected.php** la ligne ''$conf['savedir'] = './data';''\\
Dans ce cas également "data" peut-être un lien symbolique vers le dossier contenant les données.
À des fins de test uniquement, le dossier //data// doit au minimum contenir les répertoires suivants, même s'ils sont vides
* attic
* cache
* index
* locks
* media
* media_attic
* media_meta
* meta
* pages
* tmp
Vous n'aurez dans ce cas aucune page de la documentation, à moins de copier/coller le contenu depuis le site en ligne.
Vous pouvez-ajoutez [[https://launchpad.net/ubuntu-fr-guide|Guide]] et [[https://launchpad.net/ubuntu-fr-tour|Tour]] mais pour avoir une installation minimale de la doc ce n'est pas utile. Attention cependant à garder en tête que certains liens peuvent ne pas marcher
Vous aurez alors l'arborescence finale suivante :
* var/www/html/ubuntu-fr/ubuntu-fr-doc/
* bin/
* conf/
* data/
* inc/
* lib/
* vendor/
* doku.php
* index.php
* .htaccess.dist
==== Paramétrage ====
Modifiez les [[:droits]] sinon vous risquez d'avoir des [[#erreurs]]
sudo chown -R www-data:www-data /var/www/html/ubuntu-fr
sudo chmod -R ug+rw /var/www/html/ubuntu-fr
Le **seul** fichier de configuration à modifier sera **conf/local.protected.php**. Il est prioritaire sur **local.php**, qui lui-même supplante **dokuwiki.php**.\\
Adaptez-le par exemple comme ceci
= 1 car rewrite fait sur le serveur. Risque 404-not found en localhost
// donc:
$conf['userewrite'] = 2;
//passer en dev sinon ???
$conf['is_dev'] = 1;
//Gestion du thème
//Choix du template
//$conf['template'] = 'adoradark';
//$conf['template'] = 'dokuwiki';
//Lieux du template (pas trouvé comment mettre en local donc usage des servers pour le template, sinon choisir au dessus dokuwiki
//$conf['tpl']['ubuntu-2010']['static_host'] = '//www-static.ubuntu-fr.org';
//Reactive toutes les actions
$conf['disableactions']='';
//* Gestion de connexion utilisateur pour le serveur de DEV.
$conf['authtype']='authplain'; //pour la connexion sans la base du forum
//remplir users.auth.php en faisant un sha1 sur le net.
//par exemple le login+mdp y on été mis à testeur/testeur avec
//testeur:0dd3d8466da1d1b581d8b1036f24ef43d37c7974:Moi:moi@nawak.og:members
//pour être admin et pas simple user
$conf['superuser']= 'testeur';
// Suivi des modifications non nécessaires en DEV
$conf['notify'] = '';
Modifier **users.auth.php** en vous basant sur **users.auth.php.dist** si vous souhaitez avoir un utilisateur de connecté. Ici le nom choisi est //testeur// en login. La suite alphanumérique est le résultat en SHA1 du mot de passe qui est également //testeur//.
testeur:0dd3d8466da1d1b581d8b1036f24ef43d37c7974:Moi:moi@nawk.org:admin
Pour chiffrer votre mot de passe aller [[http://md5encrypt.net/sha1-encryption/#menu-item-24|ici]].
À vous de faire vos essais ensuite, comme [[:utilisateurs:fabux:emeht|installer un autre thème]] si vous le souhaitez: vous êtes chez vous 8-)
===== Erreurs =====
==== Page blanche ====
Il peut s'agir de :
* un mauvais réglage dans le fichier **conf/local.protected.php**. Vérifiez que vous n'avez pas oublié un ''$'' ou un '';'' ou encore fais usage d'un mauvais paramètre.
* l'absence du paquet [[apt>php-xml]]. (notamment pour les actions sur les pages)
* un [[#probleme_de_theme|problème de thème]]
==== 403 : Forbidden ====
Vérifier la présence du dossier **data/** ainsi que les droits (utilisateur et groupe //www-data//) des différents fichiers et dossiers.
==== 404 : Not Found ====
Passer le ''userewrite'' à 0 dans **local.protected.php**. Vérifier également la valeur de //server.document-root// (s'il s'agit de [[:Lighttpd]] dans **/etc/lighttpd/lighttpd.conf**)
==== Access Denied ====
FIXME Erreur de configuration du serveur ?
==== Problème de thème ====
Vous avez bien le thème de la documentation ubuntu mais pas le contenu de la page.
Commencer par modifier le fichier **local.protected.php** pour avoir la valeur
$conf['template'] = 'dokuwiki';
Si vous retrouvez la page c'est que le [[:services|service]] //php7.0-fpm// n'a pas été démarré comme indiqué dans le [[#pré-requis]].
Vous pouvez rester avec le thème dokuwiki, mais attention dans ce mode certaines extensions peuvent fonctionner mais pas avec le template ubuntu.
Si vous avez toujours le problème, vérifier dans le fichier **/etc/php/7.0/fpm/php.ini** que vous avez bien les valeurs suivantes
;cgi.fix_pathinfo=1et
;short_open_tag = Off
Les **;** en début de ligne doivent être présents
En cas de modification, relancer les services //php7.0-fpm// et //lighttpd//
==== Ce site est inaccessible ====
Mauvais paramétrage de **/etc/lighttpd/conf-available/15-fastcgi-php.conf**. Le modifier en conséquence pour php7 et relancer lighttpd
==== 503 - Service Not Available ====
Le [[:services|service]] //php7.0-fpm// n'est pas démarré. Essayez
sudo service php7.0-fpm start
Si besoin ajoutez-le au démarrage du système.sudo systemctl enable php7.0-fpm.service
==== Writing plugins.local.php failed ====
Le dossier **data/** n'a pas les bons droits
===== Sources =====
* [[:groupes:ubuntu-fr-webteam:tester_les_outils|Tester les outils]]
* [[https://www.howtoforge.com/tutorial/installing-lighttpd-with-php7-php-fpm-and-mysql-on-ubuntu-16.04-lts/|Installer lighttpd et php7]] **(en)**
----
//Contributeur: [[:utilisateurs:Fabux]]//