Roles Rôle « Base Vhosts »
22 octobre 2025 à 16:34Ce rôle est chargé de mettre en place les éléments communs nécessaires à un Virtual Host
Tags internes
- base-vhosts : Mise en place du Virtual Host ;
- vhost-structure : Création des dossiers et fichiers requis ;
- base-vhost-structure : Création des dossiers et fichiers requis (limité Web) ;
- vhost-acl : Application des droits d’accès aux dossiers et fichiers ;
- base-vhost-acl : Application des droits d’accès aux dossiers et fichiers (limité Web) ;
- vhost-configuration : Création des fichiers de configuration ;
- base-vhost-configuration : Création des fichiers de configuration (limité Web) ;
- vhost-certificates : Mise en place des certificats ;
- base-vhost-certificates : Mise en place des certificats (limité Web) ;
- certificates : Copie des certificats ;
- vhost-state : Application de l’activation des fonctionalités ;
- base-vhost-state : Application de l’activation des fonctionalités (limité Web) ;
- vhost-status : Mise en place de la configuration pour la page d’état ;
Traitements spécifiques du jeu de tâches
Le rôle est inclus par dépendance par les autres rôles. Principalement par le rôle CustomVhosts.
Variables à fournir
| Variable | Type | Requis | Défaut | Description |
|---|---|---|---|---|
vhosts |
Liste d’objets vhost_base |
Non | Liste vide | Configuration Virtual Host de base |
vhosts_base_dir |
Chemin | Non | /var/www/vhosts |
Dossier sur la cible, racine des Virtual Host |
vhosts_conf_before_marker |
Texte | Non | ### HOST CONFIGURATION BEFORE | Marqueur dans le fichier de configuration des blocks avant les inclusions de configuration |
vhosts_conf_after_marker |
Texte | Non | ### HOST CONFIGURATION AFTER | Marqueur dans le fichier de configuration des blocks après les inclusions de configuration |
nfs_mountpoints |
Liste de chemins | Non | Liste vide | Liste des chemins des points de montage NFS |
Type vhost_base
| Propriété | Type | Requis | Défaut | Description |
|---|---|---|---|---|
vhost_name |
FQDN | Non | default | Nom du Virtual Host, utilisé comme ServerName |
vhost_root_name |
Segment de chemin/FQDN | Non | vhost_name |
Nom du dossier racine du Virtual Host |
vhost_conf_name |
Segment de chemin/FQDN | Non | vhost_root_name |
Nom du fichier de configuration pour l’activation |
vhost_admin |
Non | Chaîne vide | Adresse email de l’administrateur dans les pages générées par Apache | |
vhost_root_override |
Chemin | Non | Chaîne vide | Surcharge du chemin du vhost, il n’est plus sous vhosts_base_dir/vhost_root_name mais sous ce dossier |
vhost_conf_name_override |
Segment de chemin | Non | Vide | Surcharge du nom du fichier de configuration pour l’activation / désactivation, déprécié par vhost_conf_name |
vhost_user |
Identifiant | Non | www-data | Utilisateur ayant le droit d’accès aux fichiers du Virtual Host, avec les permissions d’écriture où nécessaire |
vhost_group |
Identifiant | Non | www-data | Groupe ayant le droite d’accès aux fichiers du Virtual Host |
vhost_allow_write_wwwdata |
Booléen | Non | Faux | Permet l’écriture par l’utilisateur www-data |
vhost_port |
Entier 16bits | Non | 80 | Port d’écoute HTTP |
vhost_ssl_port |
Entier 16bits | Non | 443 | Port d’écoute HTTPS |
vhost_aliases |
Liste de noms de domaine | Non | Liste vide | Alias à ajouter au Virtual Host |
vhost_docs_folder |
Segment de chemin | Non | httpdocs | Nom du dossier où sont placées les ressources publiées |
vhost_docs_folder_link_override |
Chemin | Non | Chaîne vide | Surcharge du chemin où sont placée les ressources publiées |
vhost_docs_folder_separate |
Booléen | Non | Faux | Utilisation d’un dossier séparé pour le contenu HTTPS |
vhost_docs_folder_ssl |
Segment de chemin | Non | httpsdocs | Nom du dossier où sont placées les ressources publiées en HTTPS si séparé |
vhost_docs_folder_ssl_link_override |
Chemin | Non | Chaîne vide | Surcharge du chemin où sont placée les ressources publiées en HTTPS si séparé |
vhost_is_home |
Booléen | Non | Faux | Le propriétaire et le groupe doivent être définis à vhost_user et vhost_group au lieu de www-data |
vhost_activate_http |
Booléen | Non | Vrai | La configuration est active sur HTTP |
vhost_activate_https |
Booléen | Non | Faux | La configuration est active sur HTTPS |
vhost_ssl_cert |
Chemin | Non | Chaîne vide | Chemin du certificat à utiliser pour sécuriser l’accès |
vhost_ssl_key |
Chemin | Non | Chaîne vide | Chemin de la clé privée associée au certificat |
vhost_ssl_bundle |
Chemin | Non | Chaîne vide | Chemin du certificat de l’autorité de certification intermédiaire si nécessaire |
Arborescence des virtual hosts
L’arborescence des Virtual Hosts est définie comme suit :
- Racine : le chemin par défaut est
vhosts_base_dir/vhost_root_name, surchargé parvhost_root_overridele cas échéant ;conf/: Contient la configuration des services ;host.conf: Fichier de configuration Apache pour HTTP ;host-ssl.conf: Fichier de configuration Apache pour HTTPS ;apache2/: Fichiers de configuration Apache ;*.conf: Configurations pour HTTP ;*.conf-ssl: Configurations pour HTTPS ;*.include: Configurations incluses explicitement ;
ssl/: Certificat, clé privée et CA intermédiaire pour TLS ;
httpdocs/: Racine des documents, le nom est surchargé parvhost_docs_folder;httpsdocs/: Racine des documents spécifique pour HTTPS sivhost_docs_folder_separate, le nom est surchargé parvhost_docs_folder_ssl;logs/: Journaux Apache ;shared/: Fichiers de ressource en dehors de la racine des documents ;
Par défaut, tout appartient à l’utilisateur root. La racine appartient à
l’utilisateur du Virtual Host si vhost_is_home. L’utilisateur Apache et
l’utilisateur du Virtual Host possèdent les droits de lecture sur
l’ensemble des dossiers et fichiers. Ce dernier utilisateur possède les
droits d’écriture dans les dossiers de racine de documents, shared et
les journaux PHP.
Variables fixées
| Variable | Type | Description |
|---|---|---|
base_vhost_structure |
Dictionnaire de listes d’objets | Défini les dossiers à créer et leurs permissions de base |
base_vhost_structure_acl |
Dictionnaire de listes d’objets | Défini les permissions étendues des dossiers |
base_vhost_configurations |
Listes nommées | Défini l’ensemble des fichiers de configuration Apache à mettre en place |
base_vhost_certificate_files |
Liste | Défini les suffixes des fichiers de certificat à précréer |
base_vhost_register |
Liste d’objets | Défini les paramètres pour enregistrer les configurations |
base_vhost_state |
Liste d’objets | Défini les activations conditionnelles de configuration |
base_vhost_state_resolve |
Listes nommées | Défini les éléments de résolution des conditions des configurations |