Naissance de Butterthlies, Inc.
Le fichier httpd.conf (qui se trouve dans .site.first ) contient les lignes suivantes :
User webuser
Group webgroup
ServerName my586
DocumentRoot /usr/www/APACHE3/APACHE3/site.first/htdocs
TransferLog logs/access_log
#Listen est nécessaire à Apache 2
Listen 80
Dans la première édition de ce livre, nous utilisions les directives AccessConfig et ResourceConfig. Si leur valeur est /dev/null (ou NUL avec Win32), elles désactivent l’utilisation des fichiers srm.conf et access.conf, ce qu’il fallait faire si ces fichiers n’existaient pas. Désormais, les nouvelles versions d’Apache ignorent ces fichiers s’ils ne sont pas présents : ces deux directives ne sont donc plus nécessaires. Toutefois, s’ils existent, ils seront inclus dans le fichier de configuration. Avec Apache 1.3.14 et ses versions ultérieures, on peut utiliser ces directives pour indiquer un répertoire plutôt qu’un nom de fichier : tous les fichiers de celui-ci et de ses sous-répertoires seront alors considérés comme des fichiers de configuration.
Avec Apache 2, les directives AccessConfig et ResourceConfig ont disparu et leur utilisation provoquera une erreur. Cela dit, vous pouvez utiliser Include conf/srm.conf et Include conf/access.conf, dans cet ordre, à la fin du fichier de configuration.
Assez curieusement, Apache 2 insiste pour que vous utilisiez une directive Listen. Si vous n’en mettez pas dans votre fichier de configuration, vous obtiendrez le message d’erreur suivant :
...no listening sockets available, shutting down.
Si vous êtes sous Win32, les directives User et Group n’étant pas reconnues, vous pouvez les omettre.
Le rôle d’Apache consiste à fournir des documents et, jusqu’à maintenant, nous n’avons pas fait grand chose en ce sens. Nous allons donc commencer modestement par un petit document HTML qui énumère les cartes que nous vendons, leurs prix et la façon de les obtenir.
Comme tout le monde, nous pouvons choisir l’option « Création de sites web » dans l’aide de Netscape, puis produire une petite brochure en un rien de temps :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<title>Catalogue Butterthlies</title>
</head>
<body>
<h1>Bienvenue chez Butterthlies Inc</h1>
<h2>Catalogue été</h2>
<p>Toutes nos cartes sont disponibles par lots de 20.Chaque lot coûte deux
euros. Les commandes de plus de 100 cartes donnent droit à une ristourne de 10%.
</p>
<hr>
<p>
Style 2315
<p align=center>
<img src="bench.jpg" alt="Photo d’un banc">
<p align=center> ASSIS sur un banc
<hr>
<p>
Style 2316
<p align=center>
<img src="hen.jpg" ALT="Photo d’un poulailler en forme de pagode">
<p align=center>
PERDU dans le poulailler
<HR>
<p>
Style 2317
<p align=center>
<img src="tree.jpg" alt="Très belle photo d’arbre">
<p align=center>
HAUT, très haut dans l’arbre
<hr>
<p>
Style 2318
<p align=center>
<img src="bath.jpg" alt="Photo assez curieuse d’une baignoire">
<p align=center>
SALE dans le bain
<hr>
<p align=right>
Cartes conçues par Harriet@alart.demon.co.uk
<hr>
<br>
Butterthlies Inc, Hopeful City, Nevada 99999
</body>
</HTML>
Nous voulons que cette brochure apparaisse dans .site.first/htdocs, mais nous souhaitons l’utiliser dans d’autres sites au cours de notre progression : nous allons donc la mettre dans un emplacement commun à tous les sites et nous établirons des liens vers elle avec la commande ln d’Unix, qui crée des entrées de répertoires ayant les même droits d’accès que l’original sans gaspiller l’espace du disque. De plus, si vous modifiez l’original, toutes les « copies » le seront également. Sauvegardez ce document sous le nom catalog_summer.html dans le répertoire /usr/www/APACHE3/main_docs. Les belles images auxquelles cette page fait référence sont stockées dans quatre fichiers .jpg situés dans .main_docs, qui sont liés dans les répertoires htdocs :
% ln /usr/www/APACHE3/main_docs/catalog_summer.html .
% ln /usr/www/APACHE3/main_docs/bench.jpg .
Les autres liens sont créés de la même façon (on suppose que le répertoire courant est .site.first/htdocs ).
Si vous tapez ls, vous devriez voir apparaître les fichiers dont nous venons de parler.
Il n’y a malheureusement pas d’équivalent des liens sous Win32, vous devrez donc faire plusieurs copies de ces fichiers dans les différents répertoires concernés.
Index par défaut
Tapez ./go et utilisez la machine cliente pour vous connecter sur http://www.butterthlies.com/. Vous devez voir apparaître :
INDEX of /
*Parent Directory
*bath.jpg
*bench.jpg
*catalog_summer.html
*hen.jpg
*tree.jpg
index.html
La liste précédente est l’index qu’Apache concocte faute de mieux. Nous pouvons améliorer les choses en créant notre propre page d’index et en la sauvegardant dans un fichier portant un nom spécial .htdocs/index.html :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head>
<title>Index des catalogues de Butterthlies</title>
</head>
<body>
<h1 align="center">Index des catalogues de Butterthlies</h1>
<ul>
<li><A href="catalog_summer.html">Catalogue été</A>
<li><A href="catalog_autumn.html">Catalogue automne</A>
</ul>
<hr>
<br>Butterthlies Inc, Hopeful City, Nevada 99999
</body>
</html>
Pour que notre démonstration soit plus convaincante, nous avions besoin d’un autre fichier ( catalog_autumn.html ). Nous avons donc fait ce qu’auraient fait les responsables de ce site : nous avons copié catalog_summer.html dans catalog_autumn.html et remplacé le mot été par automne, puis nous avons créé le lien dans .htdocs.
À chaque fois qu’un client demande une URL qui pointe vers un répertoire contenant un fichier index.html, Apache lui renvoie automatiquement ce fichier (le nom de ce fichier peut être modifié par la directive DirectoryIndex ). Désormais, nos clients verront donc :
Index des catalogues de Butterthlies
*Catalogue été
*Catalogue automne
----------------------------------------------
Butterthlies Inc, Hopeful City, Nevada 99999
Il ne faudra pas oublier de faire en sorte que les moteurs de recherche référencent notre site. Dès que les clients viendront le visiter (ce que nous pourrons vérifier en consultant .logs/access_log ), ils seront immanquablement envoûtés par son contenu : le téléphone commencera à sonner et les commandes à s’accumuler. Notre fortune est en passe d’être faite.