====== Installation de Drupal 8 en utilisant Composer ======
Doc : [[https://www.drupal.org/docs/develop/using-composer/using-composer-to-manage-drupal-site-dependencies]]
===== Installation de Drupal =====
Le dépôt GitHub : [[https://github.com/drupal-composer/drupal-project]]
Il faut avoir installé **Composer**. Il y a une page quelque part sur ce site...
Ne pas lancer **Composer** en tant qu'utilisateur **root** !!!
Ensuite :
# se déplacer vers le dossier www
cd /var/www
# exécuter Composer en tant qu'utilisateur www-data
composer create-project
drupal-composer/drupal-project:8.x-dev monsite
--stability dev --no-interaction
^ Si erreur du style "Cannot allocate memory" : augmenter la limite de mémoire de PHP |
Ceci va créer un sous-dossier nommé **monsite** et y installer Drupal 8 et toutes les dépendances (y compris **drush**).
**Note:** La racine du site ne sera pas le dossier **/var/www/monsite** comme c'est le cas lors d'une installation manuelle, mais **/var/www/monsite/web**. Il faut en tenir compte lorsqu'on configure le VirtualHost pour Apache.
===== Droits d'accès =====
Créer un dossier **config**, puis modifier le propriétaire des dossiers **config**, **modules**, **sites** et **themes** :
cd monsite
mkdir config
sudo chown www-data:www-data config
cd web
sudo chown -R www-data:www-data modules/ sites/ themes/
===== Module Rewrite d'Apache =====
Si ce n'est déjà fait, activer le module Rewrite d'Apache :
sudo a2enmod rewrite
sudo systemctl restart apache2.service
===== Terminer l'installation =====
Se rendre sur le site web et continuer l'installation comme d'habitude.
===== Drush =====
Le template **drupal-composer/drupal-project** que nous avons installé à l'étape précédente inclut **drush**.
Bien qu'il soit possible de lancer **drush** en tapant simplement **./vendor/bin/drush** depuis le dossier **/var/www/monsite**, il est plus simple d'installer **Drush Launcher** :
* Aller sur [[https://github.com/drush-ops/drush-launcher/releases/latest]]
* Télécharger **drush.phar**
* Le rendre exécutable : **chmod +x drush.phar**
* Copier ce fichier vers **/usr/local/bin/drush**
Normalement on devrait pouvoir se déplacer dans le dossier **monsite** et lancer **drush** simplement... Mais pour l'instant je dois absolument taper **/usr/local/bin/drush** sinon il se plaint de ne pas trouver **/usr/bin/drush** !?!?!?!