VirtualHost simple pour Drupal

Comme indiqué en préambule, nous partons du principe que vous évoluez dans un environnement LAMP. Apache est installé sur votre système d’exploitation et fonctionne correctement.

Ci-dessous, un exemple simple de VirtualHost à mettre en place pour votre espace de travail. Il pourra être ajusté / amélioré sur des environnements plus critiques.

<VirtualHost *:80>
    ServerName MON_SERVER_NAME

    DocumentRoot MON_CHEMIN_ABSOLU/drupal/web/
    <Directory MON_CHEMIN_ABSOLU/drupal/web/>
        Options SymLinksIfOwnerMatch
        AllowOverride All
        Require all granted
    </Directory>

    AssignUserID www-ruiadr ruiadr
</VirtualHost>

Il vous faudra:

  • Remplacer MON_SERVER_NAME par votre propre nom de domaine
    • Exemple: adrien-ruiz.fr
  • Remplacer MON_CHEMIN_ABSOLU par le path absolu menant à la racine du projet Drupal
    • Exemple: /var/www/sites/site1/drupal/web/
    • Pour rappel, dans cet article, le CMS avait été initialisé dans un répertoire nommé drupal, le fichier index.php permettant de lancer le site se trouve dans le répertoire drupal/web

🔔 Digression : On notera la présence de la ligne AssignUserID www-ruiadr ruiadr amenée par l’utilisation de apache-itk. Ce module apache devient nécessaire lorsque vous gérez plusieurs utilisateurs au sein d’un système d’exploitation dédié au web (Debian dans mon cas). Il va sécuriser vos sites en permettant de préciser pour chaque VirtualHost un utilisateur. Dans un environnement de développement, il ne vous sera probablement pas nécessaire.

Pour aller plus loin avec NGINX : https://www.nginx.com/resources/wiki/start/topics/recipes/drupal/. Nous n’aborderons pas NGINX ici, même s’il sera certainement plus adapté aux projets de grande envergure et à fort trafic.


Retour au sommaire
Article suivant: La base de données
Article précédent: Initialisation d’un projet via composer