Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
utilisateurs:fabux:brouillons:ikiwllatsinubfr [Le 11/09/2017, 16:25] – Note à la volée fabuxutilisateurs:fabux:brouillons:ikiwllatsinubfr [Le 22/10/2018, 07:45] (Version actuelle) – Coquilles Fabux
Ligne 1: Ligne 1:
 +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.
 +
 +<note important>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.</note>
 +
 +<note tip>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]].</note>
 +
 +===== 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]].
 +
 +<note important>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 "
 +<file>server.document-root        = "/var/www/html/"</file>
 +</note>
 +
 +
 +===== 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 :
 +<code>
 +git clone https://git.launchpad.net/ubuntu-fr-doc</code>
 +<note important>En cas de message d'erreur réessayez après avoir ajouté ceci dans **~/.gitconfig** <file>[url "git+ssh://VotreNomSurLP@git.launchpad.net/"]
 +        insteadof = lp:
 +[user]
 +        email = votreEmail@hebergeur.com
 +        name = VotreNomSurLP
 +</file>Suivi de <code>source .gitconfig</code>
 +</note>
 +
 +
 +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/**. 
 +
 +<note tip>Il est possible de positionner les données dans un autre dossier et faire un lien symbolique vers celui-ci nommé **data** <code>ln -s /lieu/des/datas data</code> 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.
 +</note>
 +
 +<note tip>À 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.
 +</note>
 +<note>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</note>
 +
 +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]]  
 +<code>
 +sudo chown -R www-data:www-data /var/www/html/ubuntu-fr
 +sudo chmod -R ug+rw /var/www/html/ubuntu-fr
 +</code>
 +
 +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 
 +<file php local.protected.php>
 +<?php
 +/*
 + * Paramètres de configuration propres à votre serveur de travail
 + * Attention les options principales sont dans local.php qu'il ne faut pas modifier
 + * Penser à en faire une sauvegarde avant une màj
 +*/
 +
 +//Le fichier userscripts.js sert pour les bouton en mode édition (exemple modifier un fichier, installer un paquet)
 +
 +//https://www.dokuwiki.org/fr:rewrite pour pas avoir doku.php?id=nompage
 +//https://www.dokuwiki.org/rewrite#discussion pour php
 +//0: pas de rewrite / 1:passe par lighttpd.conf/ 2:interne à dokuwiki
 +//dans local.php ->= 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'] = '';
 +
 +</file>
 +
 +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//.
 +<file>testeur:0dd3d8466da1d1b581d8b1036f24ef43d37c7974:Moi:moi@nawk.org:admin</file>
 +
 +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 
 +<file>$conf['template'] = 'dokuwiki';</file> 
 +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]].
 +<note tip>Vous pouvez rester avec le thème dokuwiki, mais attention dans ce mode certaines extensions peuvent fonctionner mais pas avec le template ubuntu.</note>
 +
 +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
 +<file>;cgi.fix_pathinfo=1</file>et
 +<file>;short_open_tag = Off</file>
 +<note important>Les **;** en début de ligne doivent être présents</note>
 +
 +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
 +<code>sudo service php7.0-fpm start</code>
 +Si besoin ajoutez-le au démarrage du système.<code>sudo systemctl enable php7.0-fpm.service</code>
 +
 +==== 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]] **<sup>(en)</sup>**
 +
 +----
 +//Contributeur: [[:utilisateurs:Fabux]]//