<-
Apache > Serveur HTTP > Documentation > Version 2.2 > Serveurs virtuels

Support Apache des serveurs virtuels par IP

Langues Disponibles:  en  |  fr  |  ja  |  ko 

Voir aussi

top

Système requis

Comme l'indique le terme par IP, le serveur doit disposer de différentes adresses IP pour chaque serveur virtuel par IP. La machine peut posséder plusieurs connexions physiques au réseau, ou utiliser des interfaces virtuelles qui sont supportées par la plupart des systèmes d'exploitation modernes (Consultez la documentation des systèmes d'exploitation pour plus de détails, notamment les "alias IP" et la commande "ifconfig" pour les activer).

top

Comment configurer Apache

Il y a deux manières de configurer Apache pour le support de multiples serveurs virtuels. Il suffit soit de faire tourner un processus résident httpd pour chaque nom de domaine, soit de faire tourner un unique processus résident qui gère tous les serveurs virtuels.

Utilisez des processus résidents multiples lorsque :

Utilisez un unique processus résident lorsque :

top

Configuration de processus multiples

Créez une installation indépendante du programme httpd pour chaque serveur virtuel. Pour chacune d'elle, utilisez la directive Listen dans le fichier de configuration pour définir l'adresse IP (ou serveur virtuel) que le processus résident doit gérer. Par exemple :

Listen www.smallco.com:80

Il est recommandé d'utiliser une adresse IP plutôt qu'un nom de domaine (consultez Problèmes DNS avec Apache).

top

Configuration d'un unique processus résident pour des serveurs virtuels

Dans ce cas, un unique processus httpd va gérer les requêtes pour le serveur principal et tous les serveurs virtuels. Dans le fichier de configuration, la directive VirtualHost va servir à définir les autres directives ServerAdmin, ServerName, DocumentRoot, ErrorLog et TransferLog ou CustomLog avec des valeurs différentes pour chaque serveur virtuel. Par exemple :

<VirtualHost www.smallco.com>
ServerAdmin webmaster@mail.smallco.com
DocumentRoot /groups/smallco/www
ServerName www.smallco.com
ErrorLog /groups/smallco/logs/error_log
TransferLog /groups/smallco/logs/access_log
</VirtualHost>

<VirtualHost www.baygroup.org>
ServerAdmin webmaster@mail.baygroup.org
DocumentRoot /groups/baygroup/www
ServerName www.baygroup.org
ErrorLog /groups/baygroup/logs/error_log
TransferLog /groups/baygroup/logs/access_log
</VirtualHost>

Il est recommandé d'utiliser une adresse IP plutôt qu'un nom de domaine (consultez Problèmes DNS avec Apache).

Presque toutes les directives de configuration peuvent être employées dans une directive VirtualHost, à l'exception des directives qui contrôlent la création du processus et de quelques autres. Pour connaître celles utilisables dans une directive VirtualHost, vérifiez leur Contexte en utilisant l'Index des directives.

SuexecUserGroup peut être utilisées à l'intérieur d'une directive VirtualHost si l'exécution se fait sous suEXEC. (Voir suEXEC).

SÉCURITÉ : lorsque vous spécifiez où écrire les fichiers journaux, soyez attentif aux risques si quelqu'un d'autre que celui qui a démarré Apache dispose des droits d'écriture sur l'emplacement de ces fichiers. Consultez les Conseils sur la sécurité pour plus de détails.

Langues Disponibles:  en  |  fr  |  ja  |  ko