X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=docs%2Ffr%2Fuser%2Finstallation.rst;h=b1136c12b33853c89f1b669135966c0f7f638c15;hb=5ecdfcd041767c9e3244a92bb0a6cc3c3f80fea3;hp=4220887190f45c2db3d2b5ba5d6867c184724b3b;hpb=e9497f6fc03bfd7a1724224766120389f1c554ea;p=github%2Fwallabag%2Fwallabag.git diff --git a/docs/fr/user/installation.rst b/docs/fr/user/installation.rst index 42208871..b1136c12 100644 --- a/docs/fr/user/installation.rst +++ b/docs/fr/user/installation.rst @@ -32,6 +32,9 @@ wallabag utilise PDO afin de se connecter à une base de données, donc vous aur Installation ------------ +Sur un serveur dédié (méthode conseillée) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + wallabag utilise un grand nombre de bibliothèques pour fonctionner. Ces bibliothèques doivent être installées à l'aide d'un outil nommé Composer. Vous devez l'installer si ce n'est déjà fait. Installation de Composer : @@ -40,7 +43,7 @@ Installation de Composer : curl -s http://getcomposer.org/installer | php -Vous pouvez trouver des instructions spécifiques ici (en anglais) : __ https://getcomposer.org/doc/00-intro.md +Vous pouvez trouver des instructions spécifiques `ici (en anglais) `__ : Pour installer wallabag, vous devez exécuter ces deux commandes : @@ -48,7 +51,7 @@ Pour installer wallabag, vous devez exécuter ces deux commandes : git clone https://github.com/wallabag/wallabag.git cd wallabag - git checkout 2.0.0 + git checkout 2.0.5 SYMFONY_ENV=prod composer install --no-dev -o --prefer-dist php bin/console wallabag:install --env=prod @@ -60,15 +63,47 @@ Pour démarrer le serveur interne à php et vérifier que tout s'est installé c Et accéder wallabag à l'adresse http://lipdevotreserveur:8000 -.. note:: +.. tip:: + Pour définir des paramètres via des variables d'environnement, vous pouvez les spécifier avec le préfixe ``SYMFONY__``. Par exemple, ``SYMFONY__DATABASE_DRIVER``. Vous pouvez lire `documentation Symfony `__ pour en savoir plus. + +Sur un serveur mutualisé +~~~~~~~~~~~~~~~~~~~~~~~~ + +Nous mettons à votre disposition une archive avec toutes les dépendances à l'intérieur. +La configuration par défaut utilise SQLite pour la base de données. Si vous souhaitez changer ces paramètres, vous devez modifier le fichier ``app/config/parameters.yml``. + +Nous avons déjà créé un utilisateur : le login et le mot de passe sont ``wallabag``. + +.. caution:: Avec cette archive, wallabag ne vérifie pas si les extensions obligatoires sont présentes sur votre serveur pour bien fonctionner (ces vérifications sont faites durant le ``composer install`` quand vous avez un serveur dédié, voir ci-dessus). - Pour définir des paramètres via des variables d'environnement, vous pouvez les spécifier avec le préfixe ``SYMFONY__``. Par exemple, ``SYMFONY__DATABASE_DRIVER``. Vous pouvez lire `documentation Symfony -`__ pour en savoir plus. +Exécutez cette commande pour télécharger et décompresser l'archive : -Installation avec Apache +.. code-block:: bash + + wget http://wllbg.org/latest-v2-package && tar xvf latest-v2-package + +Maintenant, lisez la documentation ci-dessous pour crééer un virtual host. Accédez ensuite à votre installation de wallabag. +Si vous avez changé la configuration pour modifier le type de stockage (MySQL ou PostgreSQL), vous devrez vous créer un utilisateur via la commande ``php bin/console wallabag:install --env=prod``. + +Installation avec Docker ------------------------ -En imaginant que vous vouliez installer wallabag dans le dossier /var/www/wallabag et que vous utilisiez php comme un module Apache, voici un vhost pour wallabag : +Nous vous proposons une image Docker pour installer wallabag facilement. Allez voir du côté de `Docker Hub `__ pour plus d'informations. + +Commande pour démarrer le containeur +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. code-block:: bash + + docker pull wallabag/wallabag + +Virtual hosts +------------- + +Configuration avec Apache +~~~~~~~~~~~~~~~~~~~~~~~~~ + +En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag`` et que vous utilisiez PHP comme un module Apache, voici un vhost pour wallabag : :: @@ -110,10 +145,10 @@ En imaginant que vous vouliez installer wallabag dans le dossier /var/www/wallab Après que vous ayez rechargé/redémarré Apache, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld. -Installation avec Nginx ------------------------ +Configuration avec Nginx +~~~~~~~~~~~~~~~~~~~~~~~~ -En imaginant que vous vouliez installer wallabag dans le dossier /var/www/wallabag, voici un fichier de configuration Nginx pour wallabag : +En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag``, voici un fichier de configuration Nginx pour wallabag : :: @@ -150,6 +185,90 @@ En imaginant que vous vouliez installer wallabag dans le dossier /var/www/wallab Après que vous ayez rechargé/redémarré Nginx, vous devriez pouvoir avoir accès à wallabag à l'adresse http://domain.tld. -.. note:: +.. tip:: Si vous voulez importer un fichier important dans wallabag, vous devez ajouter cette ligne dans votre configuration nginx ``client_max_body_size XM; # allows file uploads up to X megabytes``. + +Configuration avec lighttpd +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +En imaginant que vous vouliez installer wallabag dans le dossier ``/var/www/wallabag``, voici un fichier de configuration pour wallabag (éditez votre fichier ``lighttpd.conf`` collez-y cette configuration) : + +:: + + server.modules = ( + "mod_fastcgi", + "mod_access", + "mod_alias", + "mod_compress", + "mod_redirect", + "mod_rewrite", + ) + server.document-root = "/var/www/wallabag/web" + server.upload-dirs = ( "/var/cache/lighttpd/uploads" ) + server.errorlog = "/var/log/lighttpd/error.log" + server.pid-file = "/var/run/lighttpd.pid" + server.username = "www-data" + server.groupname = "www-data" + server.port = 80 + server.follow-symlink = "enable" + index-file.names = ( "index.php", "index.html", "index.lighttpd.html") + url.access-deny = ( "~", ".inc" ) + static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" ) + compress.cache-dir = "/var/cache/lighttpd/compress/" + compress.filetype = ( "application/javascript", "text/css", "text/html", "text/plain" ) + include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port + include_shell "/usr/share/lighttpd/create-mime.assign.pl" + include_shell "/usr/share/lighttpd/include-conf-enabled.pl" + dir-listing.activate = "disable" + + url.rewrite-if-not-file = ( + "^/([^?])(?:\?(.))?" => "/app.php?$1&$2", + "^/([^?]*)" => "/app.php?=$1", + ) + +Droits d'accès aux dossiers du projet +------------------------------------- + +Environnement de test +~~~~~~~~~~~~~~~~~~~~~ + +Quand nous souhaitons juste tester wallabag, nous lançons simplement la commande ``php bin/console server:run --env=prod`` pour démarrer l'instance wallabag et tout se passe correctement car l'utilisateur qui a démarré le projet a accès naturellement au repertoire courant, tout va bien. + +Environnement de production +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Dès lors que nous utilisons Apache ou Nginx pour accéder à notre instance wallabag, et non plus la commande ``php bin/console server:run --env=prod`` pour la démarrer, il faut prendre garde à octroyer les bons droits aux bons dossiers afin de préserver la sécurité de l'ensemble des fichiers fournis par le projet. + +Aussi, le dossier, connu sous le nom de ``DocumentRoot`` (pour apache) ou ``root`` (pour Nginx), doit être impérativement accessible par l'utilisateur de Apache ou Nginx. Le nom de cet utilisateur est généralement ``www-data``, ``apache`` ou ``nobody`` (selon les systèmes linux utilisés). + +Donc le dossier ``/var/www/wallabag/web`` doit être accessible par ce dernier. Mais cela ne suffira pas si nous nous contentons de ce dossier, et nous pourrions avoir, au mieux une page blanche en accédant à la page d'accueil du projet, au pire une erreur 500. + +Cela est dû au fait qu'il faut aussi octroyer les mêmes droits d'accès au dossier ``/var/www/wallabag/var`` que ceux octroyés au dossier ``/var/www/wallabag/web``. Ainsi, on règle le problème par la commande suivante : + +.. code-block:: bash + + chown -R www-data:www-data /var/www/wallabag/var + +Il en est de même pour les dossiers suivants : + +* /var/www/wallabag/bin/ +* /var/www/wallabag/app/config/ +* /var/www/wallabag/vendor/ + +en tapant + +.. code-block:: bash + + chown -R www-data:www-data /var/www/wallabag/bin + chown -R www-data:www-data /var/www/wallabag/app/config + chown -R www-data:www-data /var/www/wallabag/vendor + +sinon lors de la mise à jour vous finirez par rencontrer les erreurs suivantes : + + +.. code-block:: bash + + Unable to write to the "bin" directory. + file_put_contents(app/config/parameters.yml): failed to open stream: Permission denied + file_put_contents(/.../wallabag/vendor/autoload.php): failed to open stream: Permission denied