Serveur et e-mail
Drupal multisite : plusieurs sites, une seule installation
Deux sites pour une même entreprise, par exemple un site de marque et un site dédié à une activité, n’imposent pas deux installations. Drupal sait faire tourner plusieurs sites sur un seul code, c’est le multisite.
Comment ça marche
Le cœur de Drupal et les modules sont installés une fois. Chaque site a son dossier dans sites/, avec son fichier de réglages, sa base de données et ses fichiers téléversés. Le fichier sites/sites.php associe chaque nom de domaine à son dossier. Pour le visiteur, ce sont deux sites distincts, avec leur design et leurs contenus.
Ce que ça simplifie
- Une seule mise à jour : un correctif de sécurité du cœur ou d’un module s’applique en une fois à tous les sites.
- Des développements partagés : un module écrit pour l’un est disponible pour l’autre.
- Un seul hébergement à administrer, sans multiplier les copies du même code.
Ce que ça complique
- Tout est lié : une mise à jour de module qui pose problème touche tous les sites à la fois. Il faut tester sur une copie avant de déployer.
- Un même rythme : les sites doivent rester sur les mêmes versions. Si l’un doit évoluer beaucoup plus vite que l’autre, deux installations séparées sont plus saines.
- Un seul serveur : une surcharge sur un site peut ralentir les autres.
La règle que j’applique : le multisite convient à des sites qui appartiennent au même propriétaire et vivront ensemble. Pour des sites indépendants, il crée plus de contraintes qu’il n’en retire.
Côté serveur
Avec nginx, un seul hôte virtuel peut répondre à tous les domaines : c’est Drupal qui fait le tri. Pour le HTTPS, un certificat multi-domaines (SAN) couvre l’ensemble des noms. Let’s Encrypt en délivre gratuitement, jusqu’à 100 noms par certificat. Chaque site garde sa propre base de données et ses propres identifiants, pour qu’une faille sur l’un ne donne pas accès aux données de l’autre.
Questions fréquentes
Qu’est-ce que le multisite Drupal ?
Une fonction du cœur de Drupal qui permet de faire tourner plusieurs sites sur une seule installation, chaque site ayant sa propre base de données et sa configuration.
Le multisite est-il plus sûr ?
Il simplifie les mises à jour de sécurité, puisqu’elles s’appliquent une fois. Mais une erreur de mise à jour touche aussi tous les sites en même temps.
Faut-il un certificat par site ?
Non. Un certificat multi-domaines (SAN) peut couvrir tous les noms de domaine, et Let’s Encrypt en délivre gratuitement.
Sources
- Drupal.org, documentation du multisite drupal.org
- Let’s Encrypt, limites d’émission (100 noms par certificat) letsencrypt.org