Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
fr:logiciel:internet:apache:vhosts-0 [2021/02/15 12:01] – ↷ Page déplacée de logiciel:internet:apache:vhosts-0 à fr:logiciel:internet:apache:vhosts-0 admin | logiciel:internet:apache:vhosts:start [2021/03/20 09:43] – ↷ Page déplacée et renommée de logiciel:internet:apache:vhosts-0 à logiciel:internet:apache:vhosts:start admin | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
Les hôtes virtuels du serveur web Apache permettent d' | Les hôtes virtuels du serveur web Apache permettent d' | ||
- | ====== Sous-domaines par nom ====== | + | ===== Sous-domaines par nom ===== |
Pour chaque domaine, on crée un fichier / | Pour chaque domaine, on crée un fichier / | ||
- | ===== en local : sous-domaines du localhost | + | ==== en local : sous-domaines du localhost ==== |
__Exemple__ : sous-domaine doc.localhost | __Exemple__ : sous-domaine doc.localhost | ||
Ligne 43: | Ligne 43: | ||
</ | </ | ||
- | ===== sur le web : sous-domaines d'un domaine | + | ==== sur le web : sous-domaines d'un domaine ==== |
Pour créer doc.mondomaine.com, | Pour créer doc.mondomaine.com, | ||
Ligne 71: | Ligne 71: | ||
#</ | #</ | ||
- | ====== Préparation de l' | + | ===== Préparation de l' |
Voici un exemple d' | Voici un exemple d' | ||
Ligne 96: | Ligne 96: | ||
* www -> racine de l' | * www -> racine de l' | ||
- | ====== Configuration du domaine mondomaine.com | + | ===== Configuration du domaine mondomaine.com ===== |
Pour ce domaine, nous créons les 2 configurations suivantes dans le fichier / | Pour ce domaine, nous créons les 2 configurations suivantes dans le fichier / | ||
Ligne 176: | Ligne 176: | ||
/ | / | ||
- | ====== Cas du vhost par défaut | + | ===== Cas du vhost par défaut ===== |
Pour gérer le cas d'une requête à destination d'un domaine qui n'est pas hébergé, un vhost par défaut est défini. Il est défini en premier. | Pour gérer le cas d'une requête à destination d'un domaine qui n'est pas hébergé, un vhost par défaut est défini. Il est défini en premier. | ||
Ligne 197: | Ligne 197: | ||
a2ensite 0000-default | a2ensite 0000-default | ||
- | ====== Règles de comportement | + | ===== Règles de comportement ===== |
Nous souhaitons héberger le domaine mondomaine.com. | Nous souhaitons héberger le domaine mondomaine.com. | ||
Ligne 207: | Ligne 207: | ||
En ce qui concerne les alias de domaines (différentes extensions tld), il est nécessaire de modifier la configuration du vhost en ajoutant les directives ServerAlias. En effet, les domaines n’apparaissant ni en ServerName, ni en ServerAlias seront traités par le vhost par défaut. | En ce qui concerne les alias de domaines (différentes extensions tld), il est nécessaire de modifier la configuration du vhost en ajoutant les directives ServerAlias. En effet, les domaines n’apparaissant ni en ServerName, ni en ServerAlias seront traités par le vhost par défaut. | ||
- | ====== Configuration d' | + | ===== Configuration d' |
- | ====== Utilisation des virtualhosts | + | ===== Utilisation des virtualhosts ===== |
Les Serveurs Virtuels font fonctionner un ou plusieurs serveurs Web ((comme company1.example.com and company2.example.com)) sur une même machine. | Les Serveurs Virtuels font fonctionner un ou plusieurs serveurs Web ((comme company1.example.com and company2.example.com)) sur une même machine. | ||
Ligne 226: | Ligne 226: | ||
* et de configurer le serveur Apache pour qu'il reconnaisse ces domaines | * et de configurer le serveur Apache pour qu'il reconnaisse ces domaines | ||
- | ===== Serveurs Virtuels par-Nom (Un ou plusieurs sites Web par adresse IP) ===== | + | ==== Serveurs Virtuels par-Nom (Un ou plusieurs sites Web par adresse IP) ==== |
Les noms utilisés doivent être définis sur le serveur DNS et être liés à une adresse IP associée au serveur. | Les noms utilisés doivent être définis sur le serveur DNS et être liés à une adresse IP associée au serveur. | ||
Ligne 252: | Ligne 252: | ||
; ServerAlias : autres noms permis pour accéder au même site Web (jokers * et ? autorisés) | ; ServerAlias : autres noms permis pour accéder au même site Web (jokers * et ? autorisés) | ||
- | ====== Génération automatique des domaines : virtualhosts dynamiques | + | ===== Génération automatique des domaines : virtualhosts dynamiques ===== |
La génération automatique des domaines est utile si les < | La génération automatique des domaines est utile si les < | ||
Ligne 293: | Ligne 293: | ||
* DocumentRoot | * DocumentRoot | ||
- | ===== Hôtes virtuels dynamiques simples | + | ==== Hôtes virtuels dynamiques simples ==== |
Cet extrait du fichier httpd.conf met en œuvre l' | Cet extrait du fichier httpd.conf met en œuvre l' | ||
Ligne 312: | Ligne 312: | ||
Le nom du serveur qui est inséré dans le nom de fichier est déduit de l' | Le nom du serveur qui est inséré dans le nom de fichier est déduit de l' | ||
- | ===== Un serveur de pages d' | + | ==== Un serveur de pages d' |
C'est une adaptation du système ci-dessus pour créer des pages d' | C'est une adaptation du système ci-dessus pour créer des pages d' | ||
Ligne 328: | Ligne 328: | ||
</ | </ | ||
- | ===== Plus d'un serveur virtuel sur le même serveur | + | ==== Plus d'un serveur virtuel sur le même serveur ==== |
Par exemple, une adresse IP pour les pages d' | Par exemple, une adresse IP pour les pages d' | ||
Ligne 368: | Ligne 368: | ||
< | < | ||
- | ===== Serveur virtuel basé sur l'IP plus efficace | + | ==== Serveur virtuel basé sur l'IP plus efficace ==== |
Amélioration du paragraphe [[#2.1. Hôtes virtuels dynamiques simples]]. Pour éviter la recherche DNS pour transformer un nom en une adresse IP, on peut se baser sur les adresses IP elles-mêmes plutôt que sur les noms correspondants. | Amélioration du paragraphe [[#2.1. Hôtes virtuels dynamiques simples]]. Pour éviter la recherche DNS pour transformer un nom en une adresse IP, on peut se baser sur les adresses IP elles-mêmes plutôt que sur les noms correspondants. | ||
Ligne 385: | Ligne 385: | ||
</ | </ | ||
- | ===== Hôtes virtuels dynamiques simples utilisant mod_rewrite | + | ==== Hôtes virtuels dynamiques simples utilisant mod_rewrite ==== |
Cet extrait du fichier httpd.conf fait la même chose que le premier exemple ([[#2.1. Hôtes virtuels dynamiques simples]]). La première moitié est très semblable à la partie correspondante ci-dessus, mais avec quelques changements pour la compatibilité descendante et pour faire fonctionner correctement la partie mod_rewrite, | Cet extrait du fichier httpd.conf fait la même chose que le premier exemple ([[#2.1. Hôtes virtuels dynamiques simples]]). La première moitié est très semblable à la partie correspondante ci-dessus, mais avec quelques changements pour la compatibilité descendante et pour faire fonctionner correctement la partie mod_rewrite, | ||
Ligne 427: | Ligne 427: | ||
</ | </ | ||
- | ===== Un serveur de pages d' | + | ==== Un serveur de pages d' |
Ceci fait la même chose que le second exemple ([[#2.2. Un serveur de pages d' | Ceci fait la même chose que le second exemple ([[#2.2. Un serveur de pages d' | ||
Ligne 453: | Ligne 453: | ||
</ | </ | ||
- | ==== Utilisation d'un fichier séparé de configuration de l' | + | === Utilisation d'un fichier séparé de configuration de l' |
Ce dispositif utilise des fonctionnalités plus avancées de mod_rewrite pour lier un hôte virtuel à la racine des documents à partir d'un fichier de configuration séparé. Cela offre plus de souplesse, mais nécessite une configuration plus complexe. | Ce dispositif utilise des fonctionnalités plus avancées de mod_rewrite pour lier un hôte virtuel à la racine des documents à partir d'un fichier de configuration séparé. Cela offre plus de souplesse, mais nécessite une configuration plus complexe. | ||
Ligne 490: | Ligne 490: | ||
</ | </ | ||
- | ===== Références | + | ==== Références ==== |
* [[http:// | * [[http:// | ||
Ligne 498: | Ligne 498: | ||
* [[http:// | * [[http:// | ||
- | ====== Exemples | + | ===== Exemples ===== |
- | ===== Plusieurs serveurs virtuels par nom sur une seule adresse IP. ===== | + | ==== Plusieurs serveurs virtuels par nom sur une seule adresse IP. ==== |
Votre serveur ne dispose que d'une seule adresse IP, et de nombreux alias (CNAMES) pointent vers cette adresse dans le DNS. | Votre serveur ne dispose que d'une seule adresse IP, et de nombreux alias (CNAMES) pointent vers cette adresse dans le DNS. | ||
Ligne 560: | Ligne 560: | ||
En fait, le seul cas où cette configuration ne fonctionne pas est lorsque différents contenus doivent être servis en fonction de l' | En fait, le seul cas où cette configuration ne fonctionne pas est lorsque différents contenus doivent être servis en fonction de l' | ||
- | ===== Serveurs virtuels par nom sur plus d'une seule adresse IP ===== | + | ==== Serveurs virtuels par nom sur plus d'une seule adresse IP ==== |
< | < | ||
Ligne 597: | Ligne 597: | ||
Les requêtes vers 172.20.30.50 avec un nom de serveur inconnu, ou sans en-tête Host:, seront servies par www.example.com. | Les requêtes vers 172.20.30.50 avec un nom de serveur inconnu, ou sans en-tête Host:, seront servies par www.example.com. | ||
- | ===== Servir le même contenu sur des adresses IP différentes (telle qu'une adresse interne et une externe) | + | ==== Servir le même contenu sur des adresses IP différentes (telle qu'une adresse interne et une externe) ==== |
La machine serveur dispose de deux adresses IP (192.168.1.1 et 172.20.30.40). | La machine serveur dispose de deux adresses IP (192.168.1.1 et 172.20.30.40). | ||
Ligne 624: | Ligne 624: | ||
Notez également que dans l' | Notez également que dans l' | ||
- | ===== Servir différents sites sur différents ports ===== | + | ==== Servir différents sites sur différents ports ==== |
Vous disposez de plusieurs domaines pointant sur la même adresse IP et vous voulez également servir de multiples ports. | Vous disposez de plusieurs domaines pointant sur la même adresse IP et vous voulez également servir de multiples ports. | ||
Ligne 660: | Ligne 660: | ||
</ | </ | ||
- | ===== Hébergement virtuel basé sur IP ===== | + | ==== Hébergement virtuel basé sur IP ==== |
Le serveur dispose de deux adresses IP (172.20.30.40 et 172.20.30.50) correspondant respectivement aux noms www.example.com et www.example.org. | Le serveur dispose de deux adresses IP (172.20.30.40 et 172.20.30.50) correspondant respectivement aux noms www.example.com et www.example.org. | ||
Ligne 680: | Ligne 680: | ||
Les requêtes provenant d' | Les requêtes provenant d' | ||
- | ===== Hébergements virtuels mixtes basés sur les ports et sur les IP ===== | + | ==== Hébergements virtuels mixtes basés sur les ports et sur les IP ==== |
Le serveur dispose de deux adresses IP (172.20.30.40 et 172.20.30.50) correspondant respectivement aux noms www.example.com et www.example.org. | Le serveur dispose de deux adresses IP (172.20.30.40 et 172.20.30.50) correspondant respectivement aux noms www.example.com et www.example.org. | ||
Ligne 713: | Ligne 713: | ||
</ | </ | ||
- | ======= Hébergements virtuels mixtes basé sur les noms et sur IP ====== | + | ====== Hébergements virtuels mixtes basé sur les noms et sur IP ===== |
Pour certaines adresses, des serveurs virtuels seront définis par nom, et pour d' | Pour certaines adresses, des serveurs virtuels seront définis par nom, et pour d' | ||
Ligne 749: | Ligne 749: | ||
</ | </ | ||
- | ===== Utilisation simultanée de Virtual_host et de mod_proxy | + | ==== Utilisation simultanée de Virtual_host et de mod_proxy ==== |
L' | L' | ||
Ligne 766: | Ligne 766: | ||
</ | </ | ||
- | ===== Utilisation de serveurs virtuels _default_ | + | ==== Utilisation de serveurs virtuels _default_ ==== |
- | ==== Serveurs virtuels _default_ pour tous les ports ==== | + | === Serveurs virtuels _default_ pour tous les ports === |
Exemple de capture de toutes les requêtes émanant d' | Exemple de capture de toutes les requêtes émanant d' | ||
Ligne 786: | Ligne 786: | ||
Vous pouvez utiliser une directive AliasMatch ou RewriteRule afin de réécrire une requête pour une unique page d' | Vous pouvez utiliser une directive AliasMatch ou RewriteRule afin de réécrire une requête pour une unique page d' | ||
- | ==== Serveurs virtuels _default_ pour des ports différents | + | === Serveurs virtuels _default_ pour des ports différents === |
La configuration est similaire à l' | La configuration est similaire à l' | ||
Ligne 806: | Ligne 806: | ||
Le serveur principal n'est jamais utilisé pour servir une requête. | Le serveur principal n'est jamais utilisé pour servir une requête. | ||
- | ==== Serveurs virtuels _default_ pour un seul port ==== | + | === Serveurs virtuels _default_ pour un seul port === |
Nous voulons créer un serveur virtuel par défaut seulement pour le port 80. | Nous voulons créer un serveur virtuel par défaut seulement pour le port 80. | ||
Ligne 819: | Ligne 819: | ||
Une requête vers une adresse non spécifiée sur le port 80 sera servie par le serveur virtuel par défaut, et toute autre requête vers une adresse et un port non spécifiés sera servie par le serveur principal. | Une requête vers une adresse non spécifiée sur le port 80 sera servie par le serveur virtuel par défaut, et toute autre requête vers une adresse et un port non spécifiés sera servie par le serveur principal. | ||
- | ==== Migration d'un serveur virtuel par nom en un serveur virtuel par IP ==== | + | === Migration d'un serveur virtuel par nom en un serveur virtuel par IP === |
Le serveur virtuel par nom avec le nom de domaine www.example.org (de notre exemple par nom) devrait obtenir sa propre adresse IP. | Le serveur virtuel par nom avec le nom de domaine www.example.org (de notre exemple par nom) devrait obtenir sa propre adresse IP. | ||
Ligne 850: | Ligne 850: | ||
Le serveur virtuel peut maintenant être joint par la nouvelle adresse (comme un serveur virtuel par IP) et par l' | Le serveur virtuel peut maintenant être joint par la nouvelle adresse (comme un serveur virtuel par IP) et par l' | ||
- | ==== Utilisation de la directive ServerPath | + | === Utilisation de la directive ServerPath === |
Dans le cas où vous disposez de deux serveurs virtuels par nom, le client doit transmettre un en-tête Host: correct pour déterminer le serveur concerné. | Dans le cas où vous disposez de deux serveurs virtuels par nom, le client doit transmettre un en-tête Host: correct pour déterminer le serveur concerné. | ||
Ligne 898: | Ligne 898: | ||
Les directives RewriteRule sont employées pour s' | Les directives RewriteRule sont employées pour s' | ||
- | ===== Sous-domaines du site domaine.com (IP=1.2.3.4) | + | ==== Sous-domaines du site domaine.com (IP=1.2.3.4) ==== |
L' | L' | ||
Ligne 1011: | Ligne 1011: | ||
a2enmod vhost_alias | a2enmod vhost_alias | ||
- | ====== Références | + | ===== Références ===== |
[[http:// | [[http:// |