Outils pour utilisateurs

Outils du site


drupal9:installation_avec_composer_ubuntu_22.04

Installation de Drupal 9 avec Composer sous Ubuntu 22.04

Installation réalisée sur une machine de développement sous Ubuntu 22.04.

Sources:

Apache et PHP

L'installation de PHP entraîne l'installation de Apache :

sudo apt install php

Installation de Composer :

sudo apt install curl
curl -s https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Les outils et extensions PHP suivantes :

sudo apt install zip unzip
sudo apt install php-mbstring php-xml php-gd php-curl php-zip

Vérifier que le module rewrite est activé :

sudo apache2ctl -M

Sinon l'activer :

sudo a2enmod rewrite
sudo systemctl restart apache2

MariaDB

Création du projet

:!: Ne pas utiliser Composer en tant que root !

:!: D'abord installer dans notre dossier $HOME en tant qu'utilisateur restreint, ensuite on le déplace vers /var/www

Créer le projet dans /home/marc/drupal9 :

cd /home/marc
composer create-project drupal/recommended-project drupal9
Si des extensions PHP manquent, composer s'arrête et liste les extensions à installer.
Redémarrer ensuite la commande composer jusqu'à ce que tout soit installé sans erreur.

Déplacer le dossier vers /var/www/drupal9 :

sudo mv /home/marc/drupal9/ /var/www

Changer le propriétaire et les droits du dossier (modifiable par le groupe) :

sudo chown -R www-data:www-data /var/www/drupal9/
sudo chmod -R 775 /var/www/drupal9/

Pour que l'utilisateur marc puisse écrire dans le dossier, il faut l'ajouter au groupe www-data si ce n'est pas encore fait :

sudo usermod -aG www-data marc
su - marc
id -nG

Virtual Host

Créer un fichier /etc/apache2/sites-available/drupal9.localhost.conf

:!: Le DocumentRoot doit pointer vers le sous-dossier /web :!:

drupal9.localhost.conf
<VirtualHost *:80>
    ServerName drupal9.localhost
    ServerAdmin marc@localhost
 
    DocumentRoot /var/www/drupal9/web
    <Directory /var/www/drupal9/web>
        Options Indexes FollowSymLinks Multiviews
        AllowOverride all
        Require all denied
        Require all granted
        Allow from all
    </Directory>
 
    ErrorLog ${APACHE_LOG_DIR}/drupal9.localhost/error.log
    CustomLog ${APACHE_LOG_DIR}/drupal9.localhost/access.log combined
</VirtualHost>

Tester et activer le nouveau site :

sudo a2ensite drupal9.localhost.conf
sudo apachectl configtest
sudo systemctl reload apache2

Accéder à l'adresse http://drupal9.localhost pour suivre les étapes d'installation.

Base de données

Créer une base de données et un utilisateur ayant tous les droits sur cette base de données.

mariadb -u admin -p

Créer la base de données :

MariaDB [(none)]> create database DATABASE_NAME;

Créer un utilisateur ayant tous les droits sur cette base de données :

MariaDB [(none)]> grant all privileges on DATABASE_NAME.* TO 'USER_NAME'@'localhost' identified by 'PASSWORD';

Appliquer les privilèges :

MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit

Sécuriser le fichier Settings

Une fois l'installation terminée, Drupal informe que les droits d'écriture devraient être supprimés sur les éléments suivants :

  • Le dossier sites/default
  • le fichier sites/default/settings.php

Mais il ne faut le faire qu'une fois que toute l'installation est terminée :-)

cd /var/www/drupal9/web
sudo chmod 0555 ./sites/default
sudo chmod 0444 ./sites/default/settings.php
drupal9/installation_avec_composer_ubuntu_22.04.txt · Dernière modification: 2022/10/15 08:15 par marclebrun