La fonction des hôtes virtuels intégrée du Serveur HTTP Apache permet au serveur de servir des informations différentes en fonction de l'adresses IP, du nom d'hôte ou du port faisant l'objet de la requête. Un guide complet sur l'utilisation des hôtes virtuels est disponible en ligne à http://httpd.apache.org/docs-2.0/vhosts/.
La meilleure façon de créer un hôte virtuel nommés consiste à utiliser le conteneur d'hôte virtuel fournit dans httpd.conf à titre d'exemple.
L'exemple d'hôte virtuel se présente de la manière suivante:
#NameVirtualHost * # #<VirtualHost *> # ServerAdmin Webmaster@dummy-host.example.com # DocumentRoot /www/docs/dummy-host.example.com # ServerName dummy-host.example.com # ErrorLog logs/dummy-host.example.com-error_log # CustomLog logs/dummy-host.example.com-access_log common #</VirtualHost> |
Pour activer la fonction d'hôte virtuel nommé, dé-commentez la ligne NameVirtualHost en retirant le symbole dièse (#) et en le remplaçant par l'astérisque (*) avec l'adresse IP attribuée à l'ordinateur.
Configurez ensuite un hôte virtuel, en dé-commentant et personnalisant le conteneur <VirtualHost>.
Sur la ligne <VirtualHost>, remplacez l'astérisque (*) par l'adresse IP du serveur. Remplacez aussi ServerName par to a par le nom d'un DNS valide assigné à l'ordinateur et configurez les autres directives selon les besoins.
Étant donné que le conteneur <VirtualHost> accepte presque toutes les directives disponibles dans le cadre de la configuration du serveur principal, sa capacité à être personnalisé est très élevée.
![]() | Astuce |
---|---|
Si vous configurez un hôte virtuel et souhaitez qu'il contrôle un port non-défini par défaut, ce dernier doit être ajouté à la directive Listen dans la partie des paramètres globaux du fichier /etc/httpd/conf/http.conf. |
Afin de pouvoir activer l'hôte virtuel venant d'être créé, le Serveur HTTP Apache doit être rechargé ou redémarré. Reportez-vous à Section 10.4 Démarrage et arrêthttpd pour obtenir des instructions sur ces opérations.
Des informations complètes sur la création et la configuration d'hôtes virtuels sur la base du nom ou de l'adresse IP sont fournies en ligne à http://httpd.apache.org/docs-2.0/vhosts/.
Par défaut, le Serveur HTTP Apache est configuré aussi bien comme un serveur Web non-sécurisé que comme un serveur sécurisé. Les deux serveurs (non-sécurisé et sécurisé) utilisent la même adresse IP et le même nom d'hôte, mais contrôlent des ports différents, à savoir, 80 et 443 respectivement. Ce faisant, des communications aussi bien non-sécurisées que sécurisées peuvent être établies simultanément.
Il est important de savoir que les transmissions HTTP améliorées grâce à SSL monopolisent cependant plus de ressources que le protocole HTTP standard et que par conséquent, un serveur sécurisé sert moins de pages par seconde. Dans de telles conditions, il est recommandé de minimiser les informations disponibles à partir du serveur sécurisé, tout particulièrement sur un site Web très solicité.
![]() | Important |
---|---|
N'utilisez pas d'hôtes virtuels nommés de concert avec un serveur Web sécurisé car le protocole de transfert SSL intervient avant que la requête HTTP n'identifie l'hôte virtuel nommé approprié. Les hôtes virtuels nommés ne fonctionnent qu'avec un serveur Web non-sécurisé. |
Les directives de configuration pour du serveur sécurisé se trouvent entre des balises d'hôte virtuel dans le fichier /etc/httpd/conf.d/ssl.conf.
Par défaut, les deux serveurs Web, sécurisé et non-sécurisé, partagent le même DocumentRoot. Il est cependant recommandé que DocumentRoot soit différent pour le serveur Web sécurisé.
Afin que le serveur Web non-sécurisé n'accepte plus de connexions, commentez la ligne qui se trouve dans httpd.conf et stipule Listen 80 en ajoutant un symbole dièse au début de la ligne. Une fois cette opération terminée, le ligne ressemblera à l'extrait ci-dessous:
#Listen 80 |
Pour plus d'informations sur la configuration d'un serveur Web utilisant SSL, reportez-vous au chapitre intitulé Configuration du serveur HTTP Apache sécurisé du Guide de personnalisation de Red Hat Linux. Pour obtenir des astuces de configuration avancées, consultez la documentation d'Apache Software Foundation disponible en ligne aux adresses suivantes: