Le serveur Web Apache HTTP est un serveur Web puissant, gratuit et open source qui a été et reste la principale plate-forme de serveur Web devant d'autres telles que Nginx et Microsoft IIS.
Selon Opensource.com, Apache détient une part de marché de 45,9 % et alimente des sites populaires tels que PayPal, Apple, Craigslist, Adobe et BBC, pour n'en citer que quelques-uns.
Qu'est-ce qu'un hôte virtuel ?
Le serveur Web Apache nous permet de créer des unités individuelles qui peuvent être configurées et personnalisées indépendamment pour servir plusieurs sites sur le même serveur. C'est ce qu'on appelle l'hébergement virtuel.
Cela se produit lorsque plusieurs noms de domaine, chacun géré séparément, sont hébergés sur un seul serveur. Le serveur est ainsi en mesure de partager ses ressources telles que l'espace disque et l'utilisation de la mémoire.
Chaque domaine est configuré pour diriger le trafic vers un répertoire unique contenant des informations spécifiques à ce nom de domaine.
Une application largement utilisée de l'hébergement virtuel est l'hébergement Web partagé où plusieurs clients sont hébergés sur un seul serveur. C'est une alternative moins chère que l'hébergement dédié qui est beaucoup plus cher.
Dans ce guide, nous approfondirons l'installation et la configuration des hôtes Apache Virtual sur Ubuntu 18.04 LTS.
Installation du serveur Web Apache
Avant d'installer Apache, il est conseillé de mettre à jour le référentiel de packages. Vous pouvez le faire en exécutant les commandes suivantes :
# sudo apt update
Ensuite, installez le serveur Web Apache.
# sudo apt install apache2
Les deux commandes marquent le premier d'un processus très important. À des fins d'illustration, nous utiliserons ubuntu.biz
et debian.edu
comme nos hôtes virtuels.
Suivre ce guide vous permettra également de tester les deux domaines et de voir si les configurations fonctionnent.
Création de structures de répertoires pour les hôtes virtuels
Nous avons besoin d'un répertoire qui contiendra les données accessibles aux utilisateurs. Apache a généralement un répertoire de documents racine qui sert aux utilisateurs qui recherchent des informations à partir de celui-ci. Le contenu du répertoire racine est attribué à des utilisateurs individuels sous le /var/www
répertoire.
Dans chacun de ces répertoires, nous avons besoin d'un dossier public (public_html) pour contenir tous les fichiers téléchargés.
Exécutez les commandes suivantes pour créer les deux répertoires :
# sudo mkdir -p /var/www/ubuntu.biz/public_html
# sudo mkdir -p /var/www/debian.edu/public_html
Accorder des autorisations
Maintenant que nous avons les structures de répertoires en place, nous devons attribuer la propriété aux utilisateurs réguliers afin qu'ils puissent modifier les fichiers contenus dans les répertoires. Pour ce faire, nous devons exécuter les commandes comme indiqué.
# sudo chown -R $USER:$USER /var/www/ubuntu.biz/public_html
# sudo chown -R $USER:$USER /var/www/debian.edu/public_html
Le $USER
La variable prend la valeur de l'utilisateur actuellement connecté en appuyant sur "Entrée". Cela permet à l'utilisateur normal de posséder les sous-répertoires contenus dans public_html
qui hébergera notre contenu.
Pour servir correctement les pages Web des hôtes virtuels, nous devons attribuer des autorisations de lecture au répertoire www général qui attribuera de manière récursive des autorisations de lecture aux fichiers et dossiers qu'il contient. Pour y parvenir, exécutez
# sudo chmod -R 755 /var/www
À ce stade, notre serveur Web doit disposer des autorisations nécessaires pour diffuser le contenu et les utilisateurs doivent également être en mesure de créer leur propre contenu dans les répertoires respectifs.
Créer de nouveaux fichiers d'hôte virtuel
Nous devons copier le fichier dans le premier domaine :
# sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/ubuntu.biz.conf
Ouvrons le nouveau fichier en utilisant nano comme indiqué :
# sudo nano /etc/apache2/sites-available/ubuntu.biz.conf
Vous pouvez choisir de le laisser tel quel ou de le rendre plus présentable pour la première fois dans l'installation du VPS (notez que le fichier d'origine a # qui dénote des commentaires expliquant ce que chaque ligne représente).
À partir du fichier ci-dessus, l'hôte virtuel traitera toute demande effectuée sur le port 80 avec le protocole par défaut utilisé ici est le HTTP.
Nous devons attribuer un e-mail de travail à l'attribut ServerAdmin. Dans ce cas, nous utiliserons [email protected]
Nous ajouterons ensuite deux lignes :
- Nom du serveur , qui correspond au domaine de base de l'hôte virtuel particulier.
- Alias du serveur qui définit tout autre nom qui doit correspondre étroitement au nom de domaine de base. Dans ce cas, nous utiliserons www.
Pour le DocumentRoot
attribut, modifiez le chemin pour refléter le chemin du fichier de l'hôte virtuel.
Les trois modifications peuvent être résumées en modifiant le fichier de l'hôte virtuel pour qu'il ressemble à ceci :
Enregistrez les modifications et quittez.
Copions le premier hôte virtuel et personnalisons pour debian.edu
(l'autre domaine)
Nous le copions par :
# sudo cp /etc/apache2/sites-available/ubuntu.biz.conf /etc/apache2/sites-available/debian.edu.conf
Ouvrez et modifiez le fichier comme indiqué :
# sudo nano /etc/apache2/sites-available/debian.edu.conf
Ouvrez le fichier de configuration et apportez les modifications correspondantes si nécessaire
Enregistrez et quittez le fichier de configuration.
Activation des fichiers hôtes nouvellement créés
Apache a des outils intégrés qui nous permettent "d'activer" des fichiers. Vous pouvez utiliser le a2ensite
outil pour accomplir cela comme indiqué :
# sudo a2ensite ubuntu.biz.conf
# sudo a2ensite debian.edu.conf
Ensuite, redémarrez le serveur Web Apache pour que les modifications prennent effet.
# sudo systemctl restart apache2
Pour tester la fonctionnalité de votre VPS, vous devez modifier le fichier hosts sur l'ordinateur local. Cela permet de rediriger les demandes de domaine vers vos serveurs VPS. Cela fonctionne de la même manière que les systèmes DNS fonctionnent lors de l'enregistrement de nouveaux domaines.
Les étapes suivantes doivent être effectuées sur le poste de travail local et non sur le serveur VPS. Vous devez vous connecter en tant que root pour que cela fonctionne. Modifiez le /etc/hosts
fichier comme indiqué.
# sudo vim /etc/hosts
Sur ce fichier, vous devez ajouter l'adresse publique (IP) de votre serveur VPS puis le nom de domaine utilisé pour accéder au VPS. Dans mon cas, mon adresse VPS est 192.168.43.195; par conséquent, j'éditerai le fichier de mes hôtes comme indiqué :
Enregistrez et quittez l'éditeur de texte.
Les changements ci-dessus signifient que toute demande de visiteur à ubuntu.biz
et debian.edu
sera dirigé via 192.168.43.195. C'est ainsi que les domaines sont redirigés sur les hôtes virtuels.
Tester les serveurs virtuels
Maintenant que nous avons terminé la configuration de nos hôtes virtuels, il est temps de vérifier si tout s'est bien passé. Pour commencer, vous pouvez vérifier l'accessibilité des deux hôtes virtuels sur le terminal à l'aide de la commande ping
Formidable! Nous pouvons atteindre l'hôte virtuel. Vous pouvez maintenant continuer et ouvrir votre navigateur et visiter l'URL.
https://ubuntu.biz
Super! Notre premier hôte virtuel fonctionne. Essayons d'envoyer un ping à notre deuxième hôte virtuel
De même, ouvrez votre navigateur et visitez l'URL de l'hôte virtuel
https://debian.edu
Conclusion
Le serveur Web Apache HTTP peut être facilement configuré pour servir plusieurs sites Web à partir d'un seul serveur. Dans ce didacticiel, nous avons appris à configurer plusieurs fichiers de configuration d'hôtes virtuels sur le serveur Web apache.