Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
linux:serveur_web:config [2011/11/30 23:35] matthieu |
linux:serveur_web:config [2012/01/06 10:32] (Version actuelle) matthieu [Redirections] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag>fr fr:linux fr:serveur fr:web}} | ||
====== Configuration d'Apache ====== | ====== Configuration d'Apache ====== | ||
- | Cette page décrit comment fonctionne la configuration d'un site web avec Apache. | + | Cette page décrit comment fonctionne la configuration d'un site web avec [[linux:serveur_web|Apache]]. |
===== Structure ===== | ===== Structure ===== | ||
Ligne 119: | Ligne 120: | ||
- | ===== Virtual hosting et redirections ===== | + | ===== Virtual hosting, redirections et reverse proxy ===== |
Le virtual hosting est utilisé pour héberger plusieurs site webs sur une seule IP publique. Apache permet plusieurs mécanismes : | Le virtual hosting est utilisé pour héberger plusieurs site webs sur une seule IP publique. Apache permet plusieurs mécanismes : | ||
* l'hébergement de plusieurs sites webs virtuels | * l'hébergement de plusieurs sites webs virtuels | ||
Ligne 130: | Ligne 131: | ||
* <VirtualHost> définit un virtual host | * <VirtualHost> définit un virtual host | ||
* ServerName définit le nom d'hôte du <VirtualHost> | * ServerName définit le nom d'hôte du <VirtualHost> | ||
+ | * ServerAlias permet d'ajouter d'autres noms en plus de ServerName | ||
Par exemple pour héberger www.bouthors.fr et web3.bouthors.fr sur le même apache avec deux configurations différentes : | Par exemple pour héberger www.bouthors.fr et web3.bouthors.fr sur le même apache avec deux configurations différentes : | ||
- | FIXME | + | <code apache> |
+ | <VirtualHost *:80> | ||
+ | ServerName www.bouthors.fr | ||
+ | ServerAlias ipv6.bouthors.fr | ||
+ | DocumentRoot /var/www | ||
+ | |||
+ | ... | ||
+ | |||
+ | </VirtualHost> | ||
+ | <VirtualHost *:80> | ||
+ | ServerName web3.bouthors.fr | ||
+ | DocumentRoot /var/www | ||
+ | |||
+ | ... | ||
+ | |||
+ | </VirtualHost> | ||
+ | </code> | ||
==== Redirections ==== | ==== Redirections ==== | ||
Les redirections sont très utilisées, elles permettent d'indiquer à l'utilisateur de faire sa requête auprès d'une autre url. | Les redirections sont très utilisées, elles permettent d'indiquer à l'utilisateur de faire sa requête auprès d'une autre url. | ||
Les commandes utilisées sont : | Les commandes utilisées sont : | ||
- | * Redirect redirige un client d'une URL vers une autre. Redirige également toutes les sous URL | + | * Redirect redirige un client d'une URL vers une autre. Cette directive map un chemin vers un autre, la cible doit être un chemin absolu. |
* RedirectMatch redirige les URL correspondant à une expression régulière | * RedirectMatch redirige les URL correspondant à une expression régulière | ||
Ligne 158: | Ligne 176: | ||
</VirtualHost> | </VirtualHost> | ||
+ | </code> | ||
+ | |||
+ | ==== Reverse Proxy ==== | ||
+ | Apache peut également agir en tant que reverse proxy et transmettre la requête à un autre serveur web. Le module mod-proxy est alors utilisé. | ||
+ | |||
+ | Il faut dans un premier temps activer mod-proxy : | ||
+ | <code> | ||
+ | # a2enmod proxy_http | ||
+ | Considering dependency proxy for proxy_http: | ||
+ | Enabling module proxy. | ||
+ | Enabling module proxy_http. | ||
+ | Run '/etc/init.d/apache2 restart' to activate new configuration! | ||
+ | # /etc/init.d/apache2 restart | ||
+ | </code> | ||
+ | |||
+ | Puis utiliser la directive ProxyPass. Par exemple rediriger le répertoire /wiki vers le serveur web4 : | ||
+ | <code apache> | ||
+ | ProxyPass /wiki/ http://web4.bouthors.fr/wiki/ | ||
</code> | </code> | ||
===== Paramètres supplémentaires ===== | ===== Paramètres supplémentaires ===== |