Table des matières
Héberger plusieurs sites web avec Apache2
Vous venez donc d'installer un serveur HTTP Apache2 sur votre serveur Gandi Ubuntu 7.10 et vous voulez maintenant commencer à héberger les sites de vos amis ou de vos clients.
Une fois installé, Apache affichera la même page web pour tous les “host names” pointant vers le serveur. Vous pouvez donc installer vos pages web directement dans /var/www/ mais cette configuration ne fonctionnera que pour un seul site web en combinaison avec un pointage A vers l'adresse IP de votre serveur Gandi.
Créer des "Virtual Hosts"
Apache peut héberger un nombre illimité de sites web à la fois. Cette technique d'hébergement virtuel est possible gràce à l'installation de ce qu'on appelle des “virtual hosts” dans votre serveur Apache.
Au niveau le plus basique, seuls deux répertoires doivent être utilisés pour installer des “virtual hosts”: /etc/apache2/sites-available/ et /etc/apache2/sites-enabled/.
Pour créer des “virtual hosts” avec Apache2, vous devez ajouter un fichier dans votre répertoire sites-available correspondant au site web virtuellement hébergé. Pour schématiser : Un fichier sites-available = Un site hébergé
Dans l'exemple suivant, nous allons ajouter un site web appelé www.djmadjack.com dans notre serveur Gandi. Vous pourrez héberger autant de sites web que vous voudrez en répétant simplement les opérations décrites ci-dessous et en les adaptant par rapport au nom des autres sites web.
1. Créer un nouveau fichier "sites-available"
Dans le répertoire /etc/apache2/sites-available/, vous trouverez un fichier par défaut appelé “default”. Utilisez ce fichier comme modèle pour vos “virtual hosts”. Pour ce faire, faites-en simplement une copie à laquelle vous donnerez un nom différent. Par exemple :
cp default djmadjack.com
Pour des raisons de clarté, il est recommandé de donner au fichier le même nom que le nom de domaine du site web à héberger. De cette manière il sera facilement identifiable sur votre serveur. Vous pouvez cependant le nommer comme vous le voulez.
2. Editer le nouveau fichier "sites-available"
Il vous faut maintenant éditer le fichier que vous venez de créer de façon à ce qu'il soit configuré pour le site web que vous désirez héberger sur votre serveur. Commencez par l'ouvrir à l'aide de votre éditeur de texte préféré…
nano djmadjack.com
…et modifiez-le afin qu'il contienne le nom du site web que vous désirez héberger. Dans le cas présent, disons que vous désirez héberger le site de djmadjack.com. Voici de quoi aura l'air le début du nouveau fichier modifié “sites-available”:
NameVirtualHost IP_DU_SERVEUR:80 <VirtualHost IP_DU_SERVEUR:80> ServerAdmin eric@djmadjack.com ServerName www.djmadjack.com DocumentRoot /var/www/djmadjack.com/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/djmadjack.com/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> (...)
La ligne DocumentRoot est utilisée pour spécifier le répertoire des pages web du site sur le serveur. Vous pouvez désigner ici n'importe quel répertoire, mais assurez vous qu'il existe. C'est donc le répertoire dans lequel se trouveront les pages web de djmadjack.com.
3. Liens de "sites-enabled"
Afin d'activer le site, vous devez lancer la commande :
a2ensite djmadjack.com
Qui va se charger de créer le lien symbolique entre site-available/djmadjack.com et site-enable/djmadjack.com (vous pouvez également faire le lien à la main avec la commande ln -s).
Afin de désactiver le site, vous devez lancer la commande:
a2dissite djmadjack.com
4. Redémarrer apache
Une fois que vous avez terminé, assurez-vous de bien redémarrer apache afin que vos modifications soient prises en compte par votre serveur. Pour ce faire, utilisez la commande suivante :
/etc/init.d/apache2 restart