MacOS

Les instructions suivantes concernent l'installation de TAO sur MacOS Mojave.

Les instructions suivantes sont pour MacOS Mojave et utilisent /Users//tao comme répertoire de travail et DocumentRoot. Si vous choisissez une version différente du système d'exploitation, de l'emplacement du répertoire ou du DocumentRoot, vous devrez ajuster ces chemins en conséquence. Ces instructions partent du principe que vous avez accès à la ligne de commande.

Préparation du serveur

Vous devrez installer brew sur votre système si ce n'est pas déjà fait, afin d'installer divers logiciels tels que http, php et mariadb :

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Vérifiez votre installation de brassage :

brew --version
brew doctor

Installez wget, composer et git afin d'installer TAO :

brew install wget composer git

Installer et démarrer PHP 7.2

brew install php@7.2
php -v
brew services start php

Configurer Apache

Comme MAcOS Mojave est livré avec un Apache2 par défaut, nous devrons l'arrêter et le désinstaller pour pouvoir installer le nôtre :

sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null

Maintenant nous sommes prêts à installer et démarrer httpd :

brew install httpd
brew services start httpd

En utilisant l'éditeur de votre choix, vous devrez configurer Apache. Si vous utilisez des hôtes virtuels, vous devrez suivre les instructions d'Apache qui se trouvent ici(https://httpd.apache.org/docs/2.4/vhosts/examples.html) :

nano /usr/local/etc/httpd/httpd.conf

Configurez le port à 80 vs 8080 :

#Listen 8080
Listen 80

Configurer le nom du serveur :

ServerName <hostname or IP>

Définir l'utilisateur et le groupe:

User <user>
Group <group>

Changez DocumentRoot et le répertoire de configuration ;

DocumentRoot /Users/<user>/tao
<Directory /Users/<user>/tao>
   Options Indexes FollowSymLinks MultiViews
   AllowOverride All
   Require all granted
</Directory>

Vous devrez configurer Apache pour qu'il utilise les modules mod_rewrite et php@7.2 :

LoadModule rewrite_module lib/httpd/modules/mod_rewrite.so
LoadModule php7_module /usr/local/opt/php@7.2/lib/httpd/modules/libphp7.so

Vous devrez également configurer Apache pour qu'il serve d'abord les pages PHP en modifiant la section dir_module de manière à ce que le fichier index.php soit placé en premier.

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

Configurer MariaDB

Pour la base de données nous utiliserons MariaDB. que nous installerons avec brew :

brew install mariadb
brew services start mariadb

À ce stade, vous pouvez vous connecter à la base de données et créer un nouvel utilisateur et/ou une nouvelle base de données pour installer TAO, si vous le souhaitez. Vous pouvez également sécuriser votre connexion à ce moment-là.

Créez une nouvelle base de données et un nouvel utilisateur pour le TAO :

mysql 
create database <database>;
create user '<user>'@'localhost' identified by '<password>';
grant all privileges on <database>.* to '<user>@'localhost' with grant option;
flush privileges;
quit

Installer le TAO

Téléchargez le paquet Tao depuis le site web ou GitHub et préparez-vous à l'installer :

wget https://releases.taotesting.com/TAO_3.3.0-RC2_build.zip    
unzip TAO_3.3.0-RC2_build.zip
sudo mv TAO_3.3.0-RC2_build /Users/<user>/tao

Ou utilisez Git pour télécharger directement la dernière version depuis GitHub :

git clone https://github.com/oat-sa/package-tao.git /Users/<user>/tao
cd /Users/<user>/tao
git checkout release-3.3-rc02

Vérifiez votre configuration Apache et redémarrez Apache :

apachectl configtest
brew services restart httpd

Assurez-vous que la version correcte de composer est utilisée. Par défaut, la version de composer installée sur MacOS est composer 2. Avant de pouvoir installer TAO, vous devrez rétrograder cette version à la version 1, avec la commande suivante :

sudo composer self-update --1

Installez les composants TAO sur le serveur à l'aide de composer, puis changez la propriété du répertoire tao nouvellement créé pour l'utilisateur Apache :

cd /Users/<user>/tao
composer install

Installez MathJax sur le serveur si nécessaire.

sudo wget --no-check-certificate  https://hub.taotesting.com/resources/taohub-articles/articles/third-party/MathJax_Install_TAO_3x.sh
sudo chmod u+x MathJax_Install_TAO_3x.sh
sudo ./MathJax_Install_TAO_3x.sh

Vous pouvez maintenant terminer votre installation soit en ligne de commande avec la commande suivante :

sudo -u www-data php tao/scripts/taoInstall.php \
--db_driver pdo_mysql \
--db_host localhost \
--db_name <db_name> \
--db_user <user> \
--db_pass <password>\
--module_namespace http://<hostname or IP>/first.rdf \
--module_url http://<hostname or IP> \
--user_login <user> \
--user_pass <password> \
-e taoCe

dans ce cas, votre instance TAO sera disponible à :

http://<hostname or IP>

Vous pouvez également installer TAO dans votre navigateur en allant à l'adresse suivante http://<hostname or IP> si vous avez suivi les instructions ci-dessus. Si vous n'avez pas suivi les instructions ci-dessus pour votre configuration Apache, vous devrez ajuster l'URL en conséquence.