SynerGaïa
Me connecter
Accueil Accueil
  • Mode d'emploi, utilisation
  • Quelques exercices...
  • Toutes les pages
  • Messages d'erreur
  • Carte de proximité
  • L'installation
  • Le Dictionnaire
  • Tutoriel de la programmation
  • Rechercher
Consultation

Préparation d'un serveur standard pour SynerGaia

  • Ce document présente, à titre d'information, une procédure pour préparer un serveur dédié à SynerGaia à partir d'une machine vierge.

    Ces informations sont données à titre indicatif et vous devez les contrôler sur les sites des fournissuers des logiciels ad hoc !

    Contexte et objectif

    SynerGaia est testé pour fonctionner sur :

    • un serveur Linux (généralement Ubuntu),
    • avec un serveur web Apache 2,
    • une gestion de base de données CouchDB 3.3 au moins,
    • un langage de programmation PHP 8.1 au moins
    • un gestionnaire de cache (généralement Memcached)

    Installation des pré-requis sur le serveur

    Liste des pré-requis

    Avant l'installation de SynerGaïa, vous devez vérifier que vous disposez bien de :

    • PHP 8.1 ou supérieur
    • Une base de données avec laquelle SynerGaïa peut communiquer : CouchDB, version 3.2 minimum

     

    Installation sur un serveur Linux

    SynerGaïa a été installé sans difficultés sur Debian, Ubuntu, Centos.

    Les indications sont données ici pour un serveur (Debian / Ubuntu)

    Les versions courantes de SynerGaïa sont certfiées pour Ubuntu 16.04.

     

    Éléments fondamentaux(serveur internet, php, base de données, cache)

    L'instruction apt-get install permet le chargement des principales bibliothèques

    sudo apt-get install apache2 php8.0 couchdb memcached libapache2-mod-php php-memcached php-gd php8.0-xml php-zip php8.0-zip php-mbstring php-gd

    puis continuer avec les paquets complémentaires

    notes :

    1. pour vérifier si mbstring est installé, passez la commande php -m sur un terminal

    Paramétrage du fichier de configuration

    • Debian, Ubuntu : /etc/apache2/conf.d ou les fichiers conf (voir aussi ../conf/charset par exemple)
    • Centos : /etc/httpd/conf/httpd.conf

    Fonction php complémentaires (graphiques, caractères, etc)

    La bibliothèque graphique gd doit aussi être installée si vous utilisez l'objet @Image.

    La commande à utiliser est :

    sudo apt-get install php-gd
    

     

    Installation de PHP-FPM

    Cette option est facultative et suppose que vous connaissez déjà Linux et PHP car il faudra utiiser les source de PHP pour l'installer.

    voir des informations sur PHP-FPM : https://fr.wikipedia.org/wiki/PHP-FPM

     

    Envoi des mails

    Php offre une solution native pour l'envoi des mails, mais elle est limitée dès que l'on pense avoir un certain volume ou une certaine complexité de mails à distribuer.

    Une solution complémentaire consiste à installer sendmail.

     

    Gestion du cache

    Un cache permet d'apporter de la performance au déroulement du programme en conservant en mémoire certains éléments fréquemment calculés.

    Voir Liste des codes de cache.

    Il existe plusieurs solutions de cache pour php.

    • Le cache propre à php (natif et non décrit ici)
    • le cache APC
    • le cache memcached

    SynerGaia test automatiquement quelle solution est disponible et choisit par ordre de préférence : memcached, APC, cache php.

     

    Cache APC

    Propose une mise en cache plus évoluée, pertinente si un seul serveur est utilisé. APC permet dans la majorité des cas d'améliorer les performances.

    sudo apt install php-apc

     

    Cache memcached

    Propose également une mise en cache et permet dans la majorité des cas d'améliorer les performances si plusieurs serveurs sont utilisés. Si APC est disponible, memcache ne sera pas utilisé.

    sudo apt install memcached php-memcached
    

     

    Connexion avec des tableurs

    La bibliothèque PHPExcel permet à SynerGaïa de se connecter avec des fichiers tableurs via l'objet @Tableur. Il est possible d'installer la bibliothèque par la commande :

    sudo apt install phpexcel

     

    Quelques commandes utiles

    Ces commandes sont données à titre d'aide sans garantie.

    • redémarrer Apache : (ou stop ou start selon les besoins)
      • Debian, Ubuntu : sudo service apache2 restart
      • Centos : apachectl restart

     

    Serveur sous Windows

    Note : L'environnement Windows n'est pas conseillé en production, mais il permet par exemple de tester et préparer un environnement à déployer en production.

     

    Préparation de CouchDB

    Voir Installation de CouchDB

    Par défaut CouchDB n'applique pas de contrôle de l'utilisateur et interdit les connexions en provenance d'un autre hôte. Ce mode de fonctionnement (appelé "admin party mode") n'est pas compatible avec SynerGaïa pour des raisons de sécurité.

    SynerGaïa a besoin d'un compte utilisateur CouchDB, que l'on pourra par exemple nommer "synergaia".

    Pour créer un utilisateur, l'interface de gestion "Fauxton" est accessible par l'url : http://localhost:5984/_utils/.

    Si l'accès à "Futon" doit être fait à partir d'une autre machine, il sera refusé par défaut. Pour l'autoriser, modifier dans le fichier/etc/couchdb/default.inila ligne "bind_address = 127.0.0.1" en y saisissant l'adresse du serveur (par exemple "bind_address = 192.168.0.100").

    Deux possibilités :

    • Si CouchDB est dans son état initial (pas de contrôle, "admin party mode"), cliquer en bas à droite sur "fix this" et enregistrer un premier utilisateur CouchDB.
    • Si CouchDB possède déjà un compte, utiliser ce compte pour créer un nouvel utilisateur.

    Plus d'informations : Installation et configuration de CouchDB

     

  • Fichiers :