{{tag>tutoriel}}
====== Apache : configurer les hôtes virtuels ======
Nous prendrons pour exemple la création d'un hôte virtuel pour **monsite.tld**
Adaptez pour vos propres domaines.
En modifiant le fichier **/etc/hosts**, vous pourrez tester la configuration pour votre ordinateur personnel, mais le contenu ne sera accessible que localement : les autres visiteurs ne pourront pas accéder au site de l'extérieur via le nom de domaine.
Depuis la version 2.4, la syntaxe des fichiers vhosts a changé :
- Le nom des fichiers doit se terminer par **.conf**
- Les directives **Allow** sont remplacées par **Require**
^ ^ Remplacer (ancienne syntaxe) ^ par ^
^ autoriser toutes les requêtes | Order allow,deny
Allow from all
^ Require all granted
^
^ interdire toutes les requêtes | Order deny,allow
Deny from all
^ Require all denied
^
===== Pré-requis =====
* avoir installé Apache
===== Première étape : Créez un répertoire pour votre hôte virtuel =====
- **Créez le répertoire et réglez ses permissions** :...@...:~ $ sudo mkdir -p /var/www/html/monsite.tld
...@...:~ $ sudo chown -R www-data:www-data /var/www/html
...@...:~ $ sudo chmod -R 755 /var/www/html
- **Vous pouvez y installer une page de test** : créez avec les droits d'administration un fichier
Bienvenue sur monsite.tld !
Succès ! L'hôte virtuel monsite.tld fonctionne !
===== Autres étapes =====
- **Créez avec les droits d'administration le fichier d'hôte virtuel** ((vous pouvez vous inspirer du fichier /etc/apache2/sites-available/000-default.conf)) :
ServerName monsite.tld
ServerAlias www.monsite.tld
DocumentRoot /var/www/html/monsite.tld
ServerAdmin admin@monsite.tld
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
* **ServerAdmin** : adresse électronique par laquelle l'administrateur du site peut recevoir des courriels
* **ServerName** : domaine de base de l'hôte virtuel
* **ServerAlias** : autres noms synonymes du nom de base
* **DocumentRoot** : répertoire de l'hôte virtuel
- **Activez le nouveau fichier de l'hôte virtuel** :...@...:~ $ sudo a2ensite monsite.tld.conf
...@...:~ $ sudo systemctl restart apache2
- **Vérifiez le succès du redémarrage** :...@...:~ $ sudo systemctl status apache2
- **Éditez avec les droits d'administration** le fichier **/etc/hosts** pour ajouter une ligne comme ceci :...
IP_de_votre_serveur monsite.tld
Ainsi, tout appel à **monsite.tld** depuis le PC renvoie au serveur et permet de tester nos hôtes virtuels même sans posséder ce domaine. **Rappel** : cela ne fonctionne qu'en local, les appels extérieurs à ce nom de domaine échouent.
===== Conclusion =====
Maintenant que vos hôtes virtuels sont configurés, vous pouvez tester votre configuration en ouvrant dans votre navigateur web le domaine que vous avez configuré :[[http://monsite.tld]]
Vous devriez voir une page qui affiche :
**Succès ! L'hôte virtuel exemple.com fonctionne !**
Vous pouvez créer des hôtes virtuels supplémentaires en suivant les mêmes étapes.
Il n'y a pas de limite au nombre de noms de domaine qu'Apache peut gérer.
===== Problèmes connus =====
===== Voir aussi =====
* **(fr)** [[https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-18-04-fr]]
----
//Basé sur << [[https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-18-04-fr|Comment configurer les hôtes virtuels Apache]] >> par digitalocean.com.//