Ce rôle est chargé de mettre en place les différents types de Virtual Host Apache et des configurations particulières.

Il dépend des rôles :

Nom Description
BaseVhosts La configuration de base, obligatoire, elle défini un Virtual Host permettant de servir des ressources statiques.
PhpVhosts La configuration nécessaire pour fournir la connexion à l’interprétation PHP au Virtual Host. Utilise PHP-FPM.
RubyVhosts La configuration nécessaires pour fournir l’interprétion Ruby au Virtual Host.

Tags internes

  • vhost-custom : Application de la configuration personnalisée ;

Voir les informations des rôles inclus.

Traitements spécifiques du jeu de tâches

Afin de permettre de filtrer les configurations de Virtual Host lorsque l’on souhaite limiter l’exécution (comme avec les tags), les noms de variable à fournir sont différents de ceux attendus par le rôle « Custom Vhosts », qui lui appelle les autres rôles.

Variable côté jeu de tâches Variable côté rôle
base_vhosts base_custom_vhosts
php_vhosts php_custom_vhosts
ruby_vhosts ruby_custom_vhosts
vhosts_groups custom_vhosts_groups
vhosts_users custom_vhosts_users
vhosts_common_authentication_keys custom_vhosts_common_authentication_keys
vhosts_authentication_keys custom_vhosts_authentication_keys
Calculé nfs_mountpoints

Le filtrage est effectué à l’aide de la variable only_vhosts à spécifier avec l’option -e. C’est une liste de nom de Virtual Host, tel que déclaré dans vhost_base::vhost_root_name. Exemple :

{ "only_vhosts": [ "vhost1.tld", "vhost2.tld" ]}

Variables à fournir

Variable Type Requis Défaut Description
base_custom_vhosts Liste d’objets basevhost Non Liste vide Configuration Virtual Host de ressources statiques
php_custom_vhosts Liste d’objets phpvhost Non Liste vide Configuration Virtual Host PHP (PHP-FPM)
ruby_custom_vhosts Liste d’objets rubyvhost Non Liste vide Configuration Virtual Host Ruby (Passenger)
custom_vhosts_file_resources_path Chemin Non Chaîne vide Dossier, relatif au playbook sous lequel sont les fichiers de configuration
custom_vhosts_template_resources_path Chemin Non Chaîne vide Dossier, relatif au playbook sous lequel sont les modèles de configuration
vhosts_base_dir Chemin Non /var/www/vhosts Dossier sur la cible, racine des Virtual Host
nfs_mountpoints Liste de chemins Non Liste vide Liste des chemins des points de montage NFS

Voir les informations des rôles inclus.

Type vhost_base

Voir le type dans BaseVhosts.

Type phpvhost_base

Voir le type dans PhpVhosts.

Type php_pool

Voir le type dans PhpVhosts.

Type rubyvhost_base

Voir le type dans RubyVhosts.

Type custom_base

Propriété Type Requis Défaut Description
apache2_conf_files Liste d’objets custom_conf_keep Non Liste vide Fichiers de configuration à copier
apache2_conf_templates Liste d’objets custom_conf Non Liste vide Modèles de configuration à générer
custom_properties Objet non typé Non Objet vide Propriétés additionnelles nécessaires pour les modèles de configuration

Type custom_conf

Propriété Type Requis Défaut Description
src Chemin Oui Chemin du fichier source, dans le dossier de ressources
dst Chemin Oui Nom du fichier de destination, avec le suffix -ssl pour la configuration sur TLS
owner Identifiant Non Chaîne vide Identifiant de l’utilisateur propriétaire
group Identifiant Non Chaîne vide Identifiant du groupe
mode Mode (Permission) Non Chaîne vide Permissions d’accès

Le triplet owner, group et mode est configuré comme dans le module file. Les noms de fichier de configuration ont normalement l’extension conf. Dans le cas des modèles, l’extension j2 provenant du modèle est omise.

Type custom_conf_keep

Basé sur custom_conf.

Propriété Type Requis Défaut Description
keep Booléen Non Faux Empêche l’écrasement du fichier existant, usage rare

Type basevhost

Hérite de vhost_base et custom_base.

Type phpvhost

Hérite de vhost_base, phpvhost_base et custom_base.

Type rubyvhost

Hérite de vhost_base, rubyvhost_base et custom_base.

Arborescence des virtual hosts

Voir les informations des rôles inclus.

Voir aussi

Pour la mise en place des applications PHP, voir PhpApplications.