Installation avancée

Cette page s'adresse plutôt aux utilisateurs qui veulent se charger eux-mêmes de l'installation de Robert2, avec tous les détails techniques, les procédures, etc.

Idéal pour une installation sur un serveur dédié (VPS), ou sur votre réseau local.

Bon à savoir
Nous pouvons vous fournir un Robert2 privé, pour vous éviter d'avoir à vous lancer dans le processus de son installation sur un serveur web !

Avant de commencer

Pour pouvoir installer Robert2, il faut disposer d'un serveur web Apache2 sur lequel est installé PHP 7.1 ou supérieur, et MySQL 5.7 (ou MariaDB 10.2.7) ou supérieur.
Assurez-vous d'avoir le droit d'accéder au serveur MySQL. Les informations de connexion à la base de données vous seront demandés lors de l'installation.

Note
N'hésitez pas à faire un tour sur le forum à la recherche de tutoriels en vidéo ou autre, cela pourrait vous être très utile !

1. Créer une base de données

Utilisez votre moyen habituel pour créer la base de données (via l'espace client de votre hébergeur, votre phpMyAdmin local, ou même une commande MySQL). Notez bien les informations de connexion MySQL (serveur hôte, utilisateur, nom de la base de données, et mot de passe) car vous en aurez besoin plus tard.

Bon à savoir
Lors de la création de la base de données, si vous le pouvez, veillez à bien choisir la charset utf8mb4 et l'interclassement utf8mb4_unicode_ci, qui permettra à Robert d'utiliser correctement tous les caractères, même les 😃 🌏 😘 !.

2. Installation des fichiers source

Attention
Le dossier dans lequel vous allez décompacter (ou cloner) le code source devra être le dossier racine sur lequel pointe votre nom de domaine ou sous-domaine.

Vous pouvez installer Robert2 de deux manières différentes :

En utilisant Git

Cette méthode, recommandée pour les experts et les développeurs qui souhaitent participer, utilise le logiciel de versionning Git pour le téléchargement du code source (et plus tard, pour les mises à jour).

Aussi, composer sera nécessaire à l'installation des dépendances du projet.

  1. Connectez-vous à votre serveur en SSH.
  2. Clonez le projet avec la commande : git clone https://github.com/Robert-2/Robert2.git (attention au choix du dossier, voir encadré ci-dessus)
  3. Installez les dépendances du projet avec composer, en étant placé à la racine du projet.
    Utilisez la commande : composer install --no-dev (si vous voulez participer au développement, ne mettez pas l'option --no-dev).

En téléchargeant un ZIP

Cette méthode est recommandée pour les néophytes, ou pour les serveurs mutualisés qui ne disposent pas du logiciel de versionning Git.

  1. Téléchargez le zip de la dernière version de Robert2.
  2. Décompactez le contenu de l'archive dans un dossier. (attention au choix du dossier, voir encadré ci-dessus)

Note
Merci de considérer le fait d'effectuer un don, pour permettre au projet d'avancer.

3. Lancer l'assistant d'installation

Une fois que le code source est installé dans un dossier, et que l'URL (domaine, sous-domaine) de votre choix pointe vers ce dossier, tout ce qu'il vous reste à faire est de visiter cette adresse dans un navigateur web (Firefox, Chrome, Opéra...), et de vous laisser guider par l'assistant d'installation.

Quand vous aurez passé toutes les étapes de l'assistant, Robert2 sera opérationnel !

Résolution des problèmes éventuels

Voici les problèmes communs que certains d'entre vous rencontreront peut-être.

Erreur 500 en visitant l'URL principale

Plusieurs causes à ce problème sont possibles :

  • Robert2 ne fonctionne que si l'URL principale pointe directement à la racine du projet. Il n'est pas (encore) possible de l'installer dans un sous-dossier du domaine. Nous vous conseillons d'utiliser un sous-domaine (un virtual host, par ex. robert.votre-adresse.com) qui pointe directement sur le dossier racine de l'application.
  • Il se peut que l'URL rewriting de votre serveur Apache soit mal configuré. Vérifiez en particulier la directive RewriteBase est bien adaptée.
  • Il se peut aussi que les dossiers système data, src/var/cache, src/var/logs, src/var/tmp, src/install/ et src/App/Config ne soient pas accessibles en écriture par l'utilisateur système du serveur (typiquement sur Linux, cet utilisateur s'appelle www-data pour un serveur Apache). Il faut les rendre accessibles en écriture pour cet utilisateur (pour un serveur Linux, utilisez la commande chmod -R 777 var/ par exemple).

Erreur SQL à l'étape 5 de l'installation (migration de la base de données)

Ceci se produit quand la version de votre serveur SQL (MySQL ou MariaDB) ne prend pas en charge le type de colonne JSON. Pour corriger cela, il faut utiliser une version du serveur qui prend en charge ce type de données. Pour cela, il faut vous assurer d'utiliser :

  • soit MySQL 5.7 (ou supérieur)
  • soit MariaDB 10.2.7 (ou supérieur)

Erreur "Désolé, mais l'API de Robert2 est inaccessible... Erreur 0 : network error"

Cette erreur est typique d'une mauvaise configuration. Il faut vérifier que l'adresse que vous utilisez est bien exactement la même que celle qui est définie dans la configuration du serveur (fichier src/App/Config/settings.json), pour le paramètre apiUrl. Vérifiez tout spécialement la présence ou non du s dans https://..., ainsi que la valeur du paramètre useSSL qui doit correspondre (true si vous utilisez SSL, false sinon).

Si vous rencontrez d'autres problèmes, merci de nous en faire part sur le forum !

Erreur "The required resource was not found" sur l'URL principale

Il s'agit sans doute du fichier de cache du routing qui est obsolète.
Pour régler le souci, il suffit donc de supprimer le fichier : src/var/cache/routes.php, et de réessayer.