introduction
Ce didacticiel vous guidera dans la configuration de plusieurs domaines et sites Web à l’aide d’hôtes virtuels Apache sur un serveur Ubuntu 18.04. Au cours de ce processus, vous apprendrez à diffuser différents contenus à différents visiteurs en fonction des domaines qu’ils demandent.
Conditions préalables
Pour terminer ce didacticiel, vous aurez besoin d’accéder aux éléments suivants sur un serveur Ubuntu 18.04:
- Un utilisateur sudo sur votre serveur
- Un serveur Web Apache2, que vous pouvez installer avec
sudo apt install apache2
Étape 1 – Créer la structure de répertoires
Nous allons d’abord créer une structure de répertoire qui contiendra les données du site que nous servirons aux visiteurs dans notre répertoire Apache de niveau supérieur. Nous utiliserons des exemples de noms de domaine, mis en évidence ci-dessous. Vous devez les remplacer par vos noms de domaine réels.
sudo mkdir -p / var / www / example.com / public_html
sudo mkdir -p / var / www / test.com / public_html
Étape 2 – Accorder des autorisations
Nous devons maintenant modifier les autorisations de notre utilisateur non root actuel pour pouvoir modifier les fichiers.
sudo chown -R $ USER: $ USER / var / www / example.com / public_html
sudo chown -R $ USER: $ USER / var / www / test.com / public_html
De plus, nous nous assurerons que l’accès en lecture est autorisé au répertoire Web général et à tous les fichiers et dossiers qu’il contient afin que les pages puissent être servies correctement.
sudo chmod -R 755 / var / www
Étape 3 – Créez des pages de démonstration pour chaque hôte virtuel
Créons du contenu à servir, nous ferons une page de démonstration index.html
pour chaque site. Nous pouvons ouvrir un fichier index.html
dans un éditeur de texte pour notre premier site, en utilisant nano par exemple.
nano / var / www / example.com /public_html/index.html
Dans ce fichier, créez un document HTML spécifique au domaine, comme suit: /var/www/example.com/public_html/index.html
<html> <head> <title>Welcome to Example.com !</title> </head> <body> <h1>Success! The example.com virtual host is working!</h1> </body> </html>
Enregistrez et fermez le fichier, puis copiez ce fichier pour l’utiliser comme base pour notre deuxième site:
cp / var / www / example.com /public_html/index.html / var / www / test.com /public_html/index.html
Ouvrez le fichier et modifiez les informations pertinentes:
nano / var / www / test.com /public_html/index.html
/var/www/test.com/public_html/index.html
<html> <head> <title>Welcome to Test.com !</title> </head> <body> <h1>Success! The test.com virtual host is working!</h1> </body> </html>
Enregistrez et fermez également ce fichier.
Étape 4 – Créer de nouveaux fichiers hôtes virtuels
Apache est livré avec un fichier hôte virtuel par défaut appelé 000-default.conf
que nous utiliserons comme modèle. Nous allons le copier pour créer un fichier hôte virtuel pour chacun de nos domaines.
Créer le premier fichier hôte virtuel
Commencez par copier le fichier du premier domaine:
sudo cp /etc/apache2/sites-available/000-default.conf / etc / apache2 / sites-available / example.com .conf
Ouvrez le nouveau fichier dans votre éditeur (nous utilisons nano ci-dessous) avec les privilèges root:
sudo nano / etc / apache2 / sites-available / example.com .conf
Nous personnaliserons ce fichier pour notre propre domaine. Modifiez le texte en surbrillance ci-dessous pour vos propres circonstances. /etc/apache2/sites-available/example.com.conf
<VirtualHost *:80> ServerAdmin admin@example.com ServerName example.com ServerAlias www.example.com DocumentRoot /var/www/ example.com /public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
À ce stade, enregistrez et fermez le fichier.
Copiez le premier hôte virtuel et personnalisez-le pour le deuxième domaine
Maintenant que notre premier fichier hôte virtuel est établi, nous pouvons créer notre deuxième en copiant ce fichier et en l’ajustant au besoin.
Commencez par le copier:
sudo cp / etc / apache2 / sites-available / example.com .conf / etc / apache2 / sites-available / test.com .conf
Ouvrez le nouveau fichier avec les privilèges root dans votre éditeur:
sudo nano / etc / apache2 / sites-available / test.com .conf
Vous devez maintenant modifier toutes les informations pour référencer votre deuxième domaine. Le fichier final devrait ressembler à ceci, avec du texte en surbrillance correspondant à vos propres informations de domaine pertinentes. /etc/apache2/sites-available/test.com.conf
<VirtualHost *:80> ServerAdmin admin@test.com ServerName test.com ServerAlias www.test.com DocumentRoot /var/www/ test.com /public_html ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Enregistrez et fermez le fichier lorsque vous avez terminé.
Étape 5 – Activer les nouveaux fichiers hôtes virtuels
Une fois nos fichiers hôtes virtuels créés, nous devons les activer. Nous utiliserons l’outil a2ensite
pour atteindre cet objectif.
sudo a2ensite example.com .conf
sudo a2ensite test.com .conf
Ensuite, désactivez le site par défaut défini dans 000-default.conf
:
sudo a2dissite 000-default.conf
Lorsque vous avez terminé, vous devez redémarrer Apache pour que ces modifications prennent effet et utiliser l’ systemctl status
pour vérifier la réussite du redémarrage.
sudo systemctl restart apache2
Votre serveur doit maintenant être configuré pour desservir deux sites Web.
Étape 6 – Configurer le fichier des hôtes locaux (facultatif)
Si vous n’avez pas utilisé les noms de domaine réels que vous possédez
pour tester cette procédure et que vous avez utilisé des exemples de
domaines à la place, vous pouvez tester votre travail en modifiant
temporairement le fichier hosts
sur votre ordinateur local.
Sur une machine Mac ou Linux locale, tapez ce qui suit:
sudo nano / etc / hosts
Pour une machine Windows modifier votre fichier host.
En utilisant les domaines utilisés dans ce guide et en remplaçant l’IP de votre serveur par le texte your_server_IP
, votre fichier devrait ressembler à ceci: / etc / hosts
127.0.0.1 localhost 127.0.1.1 guest-desktop your_server_IP example.com your_server_IP test.com
Enregistrez et fermez le fichier. Cela dirigera toutes les demandes de example.com
et test.com
sur notre ordinateur et les enverra à notre serveur.
Étape 7 – Testez vos résultats
Maintenant que vos hôtes virtuels sont configurés, vous pouvez tester votre configuration en accédant aux domaines que vous avez configurés dans votre navigateur Web:
http:// example.com
Vous devriez voir une page qui ressemble à ceci:
Vous pouvez également visiter votre deuxième page et voir le fichier que vous avez créé pour votre deuxième site.
http:// test.com
Si ces deux sites fonctionnent comme prévu, vous avez configuré deux hôtes virtuels sur le même serveur.
Si vous avez ajusté le fichier d’hôtes de votre ordinateur personnel, supprimez les lignes que vous avez ajoutées.