Vous pouvez utiliser des hôtes virtuels (vhosts) pour desservir plusieurs domaines sans avoir besoin d'adresses Internet Protocol (IP) supplémentaires. Avec les vhosts, les différentes pages s'affichent en fonction des paramètres du fichier hôte pour le site particulier demandé. Cet article décrit comment créer un vhost sur Ubuntu® 20.04 et Debian® 10.
Remarque : Dans cet article, vous pouvez remplacer l'espace réservé de example.com avec le domaine pour lequel vous configurez le vhost.
Prérequis
- Un serveur Linux® exécutant la distribution Ubuntu version 20.04 ou Debian version 10
- Apache installé. Installez-le en utilisant la commande suivante :
sudo apt install apache2
- DNS pointant le site vers l'IP du serveur
- Un utilisateur avec des privilèges d'administrateur SSH
- Pare-feu configuré pour autoriser le trafic sur le port 80
Configurer un vhost
Utilisez les étapes suivantes pour configurer un vhost Apache® :
-
Créez un nouveau répertoire pour stocker le contenu du site Web. Ce répertoire est connu sous le nom de document racine dossier dans votre fichier de configuration Apache vhost.
sudo mkdir -p /var/www/vhosts/example.com/public_html
-
Définissez les autorisations pour le nouveau répertoire. Remplacez
vhostuser
dans le nom d'utilisateur :vhostuser paramètre avec un utilisateur sur le serveur qui a accès à l'annuaire.sudo chown -R username:vhostuser /var/www/vhosts/example.com/public_html
-
Définissez des autorisations de lecture pour tous les utilisateurs du répertoire.
sudo chmod -R 755 /var/www/vhosts/
-
Créez le fichier de configuration pour le site vhost.
vi /etc/apache2/sites-available/example.com.conf
-
Collez le texte suivant dans le fichier que vous avez créé. Remplacez example.com avec votre propre nom d'hôte de site.
ServerName example.com ServerAlias www.example.com ServerAdmin [email protected] DocumentRoot /var/www/vhosts/example.com/public_html <Directory /var/www/vhosts/example.com/public_html> Options -Indexes +FollowSymLinks AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/example.com-error.log CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
Remarque : Une fois les modifications terminées, enregistrez le fichier en appuyant sur Échap touche pour passer en mode commande et en tapant
:xq
pour quitter et enregistrer les modifications. -
Créez un lien symbolique du fichier d'hôte virtuel vers le répertoire sites-enabled pour activer le nouveau fichier d'hôte virtuel à l'aide de la commande a2ensite.
sudo a2ensite domain.com
-
Vérifiez les problèmes. Vous devriez obtenir un Syntaxe OK réponse.
sudo apachectl configtest
-
Redémarrez Apache.
sudo systemctl restart apache2
-
Si vous souhaitez voir une page de test, vous pouvez créer un fichier nommé index.html dans votre dossier racine.
vi index.html
-
Collez le texte suivant.
<html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>vhost test for example.com</title> </head> <body> <h1>Success! example.com vhost!</h1> </body> </html>
-
Enregistrez et quittez le fichier.
:xq
-
Accédez à http://example.com/index.html pour afficher la page de test.