Attached with this mail the french translation of install.html.en in french.

Estrade Matthieu

Title: Compiler et installer - Apache HTTP Server

<-

Compiler et installer

Ce document couvre la compilation et l'installation d'apache sur les syst�me unix et unix-like seulement. Pour compiler et installer sous windows, voir: Using Apache with Microsoft Windows. Pour les autres plateformes, voir�la documentation platform

L�environnement de configuration et d�installation d�Apache 2.0 � chang� compl�tement depuis Apache 1.3. Apache 1.3 utilisait un jeu de scripts propri�taires pour une installation facile. Aujourd�hui, Apache 2.0 utilise libtool et autoconf pour cr�er un environnement qui ressemble � celui que l�on retrouve dans les autres projets OpenSource.

top

Aper�u pour les impatients

T�l�chargement $ lynx http://www.apache.org/dist/httpd/httpd-2_0_NN.tar.gz
Extraction $ gzip -d httpd-2_0_NN.tar.gz
$ tar xvf httpd-2_0_NN.tar
Configuration $ ./configure --prefix=PREFIX
Compilation $ make
Installation $ make install
Optimisation $ vi PREFIX/conf/httpd.conf
Tests $ PREFIX/bin/apachectl start

NN doit �tre remplac� avec le num�ro de version actuelle, et PREFIX doit �tre remplac� par le r�pertoire d�installation sur le syst�me. Si PREFIX n�est pas sp�cifi�, le r�pertoire par d�faut est�: /usr/local/apache2.

Chaque �tape de l�installation et de la compilation est d�crit plus en d�tails par la suite. Commen�ons par les pr�s requis pour compiler et installer Apache HTTPd.

top

Pr�s requis

Les conditions suivantes sont requises pour la compilation d�Apache:

  • Espace disque

    Soyez sur que vous avez au moins 50 Mo au moins de libre temporairement sur votre disque. Apr�s l�installation d�Apache, il occupe approximativement 10 Mo. La taille n�cessaire varie consid�rablement en fonction de vos choix de configuration et de modules.

  • Compilateur ANSI-C et Compilation

    Soyez sur que vous avez un compilateur ANSI-C install�. Le GNU C compilateur (GCC) de Free Software Foundation (FSF) est recommend�(la version 2.7.2 est bien). Si vous n�avez pas GCC, assurez vous que votre compilateur est compatible ANSI. De plus, votre PATH doit contenir des outils de base comme make.

  • Conservation pr�cise de l�heure

    Les �l�ments du protocole HTTP sont exprim�s par rapports � l�heure du jour (time of the day). Le moment est donc venu d�installer des utilitaires de synchronisation de date et heure sur votre syst�me. Ntpdate ou xntpd sont souvent utilis�s dans le cas pr�sent, et sont bas�s sur le NTP (Network Time Protocol). Des informations suppl�mentaire sont disponibles sur le newsgroup comp.protocols.time.ntp et sur le site officiel NTP pour plus de d�tails sur les solutions NTP et les servers d�heure et date public.

  • Perl 5 [OPTIONEL]

    Pour le support de certains scripts comme apxs ou dbmmanage (qui sont �crits en perl) l�interpr�teur Perl 5 est requis (les versions 5.003 and 5.004 sont bien). Si aucun interpr�teur n�est trouv� par le script `configure�, ce n�est pas alarmant. Vous pouvez continuer � compiler et installer Apache 2.0, seulement le support de ce type de script ne sera pas assur�. Si vous avez plusieurs interpr�teurs Perls install�s (peut �tre Perl 4 par d�faut sur le syst�me et Perl 5 par vous-m�me), alors, il est recommand� d�utiliser l�option �with-perl pour �tre sur que le bon interpr�teur est utilis� par ./configure.

top

T�l�chargement

Apache peut �tre t�l�charg� sur le site Apache Software Foundation download ou sur les sites mirroirs.

Les num�ros de version qui se terminent en alpha indiquent des versions en pr�-tests qui pourront ou ne pourront pas fonctionner. Les num�ros de versions qui se terminent en beta indiquent des releases plus stables qui n�cessitent encore des tests ou des corrections de bugs. Si vous d�sirez t�l�charger la meilleure version ��production�� d�Apache disponible, vous devez choisir la derni�re version sans alpha ni beta dans le nom de fichier.

Apr�s avoir rapatri� le fichier, et plus sp�cialement s�il provient d�un mirroir, il est important de verifier qu�il est complet et surtout non modifi�. Pour cela, vous devez tester le package avec la signature PGP. Deux proc�dures sont n�cessaires. Premi�rement, vous devez obtenir le fichier KEYS � partir du siteApache distribution. (Pour s�assurer que le fichier de KEYS n�a pas �t� modifi�, vous pouvez utiliser un fichier d�une version ant�rieure d�apache et importer les clefs d�un server de clefs public.) Les clefs sont import�es dans votre jetton personnel de clefs en utilisant les commandes suivantes (d�pend de votre version de pgp):

$ pgp < KEYS

ou

$ gpg --import KEYS

La prochaine �tape est de tester le package avec les signatures PGP qui peuvent �tre obtenues sur le site main Apache. Le fichier de signature � un nom identique � celui du package avec l�extension .asc. Ensuite, vous pouvez verifier la distribution avec les commandes suivantes�(D�pendent encore de votre version de pgp):

$ pgp httpd-2_0_NN.tar.gz.asc

ou

$ gpg --verify httpd-2_0_NN.tar.gz.asc

Vous devriez recevoir un message comme

Good signature from user "Martin Kraemer <[EMAIL PROTECTED]>".

Selon la relation de confiance contenue dans votre jetton, vous pouvez aussi recevoir un message vous avertissant que la relation de confiance entre la clefs et le signataire ne peut �tre v�rifi�e. Ce n�est pas un probl�me si vous avez confiance en l�authenticit� du fichier KEYS.

top

Extraction

Extraire les sources du serveur HTTPd Apache � partir du package est un simple probl�me de d�compression et de d�sarchivage:

$ gzip -d httpd-2_0_NN.tar.gz
$ tar xvf httpd-2_0_NN.tar

Ces commandes vont cr�er un nouveau r�pertoire dans le r�pertoire courant contenant les sources de la distribution. Vous devez aller dans ce r�pertoire avant de proc�der � la compilation.

top

Configuration des sources

L��tape suivante permet de configurer les sources d�Apache pour des plateformes et exigences particuli�res avec le script configure inclus dans le r�pertoire racine de la distribution. (Les d�veloppeurs t�l�chargeant la version CVS du source d�Apache devront avoir autoconf et libtool install�s et devront lancer buildconf avant de proc�der aux �tapes suivantes. Ce ne sont pas n�cessairement des releases officielles.

Pour configurer les sources en utilisant toutes les options par d�faut, ex�cuter simplement ./configure. Pour changer les options par d�faut, configure accepte une multitude de variables et de lignes de commandes en options. Les variables d�environnement sont g�n�ralement plac�es avant la commande ./configure, alors que les autres options doivent �tre plac�es apr�s. L�option la plus importante est le pr�fixe d�emplacement (chemin) qui sera utilis� pour l�installation, car Apache va �tre configur� pour fonctionner correctement � partir de ce chemin. Une multitude d�options sont aussi disponibles pour vos exigences.

Pour un aper�u des possibilit�s dont vous disposez, vous avez ici un exemple typique qui compile Apache pour un chemin d�installation /sw/pkg/apache avec un compilateur particulier, des flags, et les modules rewrite et speling en DSO (dynamic shared object).

$ CC="pgcc" CFLAGS="-O2" \
./configure --prefix=/sw/pkg/apache \
--enable-rewrite=shared \
--enable-speling=shared

Lancer configure va prendre quelques minutes pour tester la disponibilit� des options sur votre syst�me, et g�n�rer les Makefiles qui vont servir plus tard � compiler le server.

La fa�on la plus simple pour trouver tous les flags et options est de lancer ./configure �help. Ce qui suit est une br�ve description de la plus part des arguments et variables d�environnement.

Variables d�environnement

Le processus autoconf utilise des variables d�environnement pour g�n�rer l�environnement de compilation. En g�n�ral, ces variables changent la m�thode pour compiler apache, mais ne changent rien dans les fonctionnalit�s du server. Ces variables peuvent �tre plac�es dans l�environnement avant d�appeler configure, mais il est d�autant plus facile de les sp�cifier dans les lignes de commandes de configure comme indiqu� dans l�exemple ci-dessus.

CC=...
Nom de la commande de compilation.
CPPFLAGS=...
Options suppl�mentaires pour le compilateur C.
CFLAGS=...
Options de debug et d�optimisation pour le compilateur C
LDFLAGS=...
Options suppl�mentaires pass�es au linker.
LIBS=...
Chemin des librairies pour le linker
INCLUDES=...
Chemin du r�pertoire des includes ("-Idir").
TARGET=... [Defaut: apache]
Nom de l�ex�cutable qui va �tre g�n�r�.
NOTEST_CPPFLAGS=...
NOTEST_CFLAGS=...
NOTEST_LDFLAGS=...
NOTEST_LIBS=...
Ces variables partagent les m�mes fonctions que leurs homologues en non-test. Cependant, les variables seront appliqu�es sur le processus de compilation seulement quand autoconf aura test� les fonctionnalit�s. Ce qui autorise l�inclusion de flags qui pourront causer des probl�mes lors du test de fonctionnalit�s, mai qui devront �tre utilis�es � la compilation finale.
SHLIB_PATH=...
Chemin du r�pertoire contenant les librairies partag�es pour le compilateur et le linker.

Options de sortie d�autoconf

--help
Affiche le message d�utilisation ainsi que toutes les options disponibles, mais ne configure rien.
--quiet
D�sactive les messages de test
--verbose
Affiche plus d�information durant le processus de configuration, comme les noms de fichiers qui sont test�s.

Chemins et r�pertoires

Il y a actuellement deux fa�ons de configurer les r�pertoires dans lesquels Apache va installer ses fichiers. La premi�re m�thode est de sp�cifier les r�pertoires et laisser Apache s�installer tout seul dans les r�pertoires par d�faut.

--prefix=PREFIX [D�faut: /usr/local/apache2]
Sp�cifie le r�pertoire dans lequel les fichiers d�Apache vont �tre install�s.

Il est possible de sp�cifier pour des fichiers d�pendant de l�architecture, des emplacements diff�rents.

--exec-prefix=EPREFIX [Default: PREFIX]
Sp�cifie le r�pertoire dans lequel les fichiers d�pendant de l�architecture seront plac�s.

La seconde m�thode, plus souple, est d�utiliser le fichier config.layout. En utilisant cette m�thode, il est possible de sp�cifier s�par�ment l�emplacement de chaque type de fichier avant l�installation d�Apache.Le fichier config.layout contient quelques exemples de configurations, et vous explique comment cr�er votre propre configuration personnalis�e en suivant les exemples. Les diff�rentes dispositions dans le fichier sont group�es dans la section <Layout FOO>...</Layout> et sont report�s par nom dans FOO.

--enable-layout=LAYOUT
Utilise le layout renseign� dans le fichier config.layout pour sp�cifier les r�pertoires et chemins d�installation.

Actuellement, il est impossible de combiner les options --enable-layout et --prefix. Il reste possible de sp�cifier individuellement les chemins d�taill�s dans la ligne de commande de configure. Si vous voulez une installation de base, vous pouvez simplement et seulement utiliser l�option --prefix.Si vous voulez personnaliser votre installation, vous devez �diter le fichier config.layout et utiliser l�option --enable-layout.

Modules

Apache est un serveur modulable, les fonctionnalit�s de base uniquement sont inclues dans le core du server. Les fonctionnalit�s �tendues sont disponibles par le biais de modules. Durant le processus de configuration, vous pouvez selectionner les modules que vous d�sirer ajouter au server. Vous pouvez consulter la liste des modules inclue dans la documentation. Ces modules au statut de base, sont inclus par d�faut dans le server et doivent �tre d�sactiv�s si vous ne les voulez pas. Les modules avec un autre statut doivent �tre activ� si vous voulez les utiliser.

Il y a deux fa�on de compiler un module utilis� par Apache. Les modules peuvent �tre compil�s en statique, ce qui signifie qu�ils seront inclus en permanence dans le binaire d�apache. Sinon, si votre syst�me supporte les Dynamic Shared objects (DSOs) et qu�autoconf d�tecte ce support, vous pouvez compiler dynamiquement. Les modules DSO sont stock�s s�par�ment du binaire Apache, et doivent �tre inclus ou exclus du server en utilisant les directives de configuration de fonctionnement du server disponibles avec mod_so. Le module mod_so est automatiquement inclus dans le server d�s qu�un module dynamique est inclus lors de la compilation. Si vous voulez que votre serveur puisse utiliser des modules DSO sans le compiler avec un des modules disponibles, vous pouvez sp�cificer --enable-so.

--enable-MODULE[=shared]
Compile et inclus le module MODULE. L�identifiant MODULE est l� identifiant module disponible dans la documentation sans la terminaison "_module". Pour compiler un module en DSO, ajouter l�option =shared.
--disable-MODULE
Enl�ve le module MODULE qui sera sinon compil� et inclus.
--enable-modules=MODULE-LIST
Compile et inclus les modules list� et s�par�s par des espaces MODULE-LIST.
--enable-mods-shared=MODULE-LIST
Compile et inclus les modules list� et s�par�s par des espaces, MODULE-LIST comme des shared objects(DSO) modules.

La MODULE-LIST dans les options --enable-modules et --enable-mods-shared contient normalement une liste d�identifiants de modules s�par�s par des espaces. Par exemple, pour activer mod_dav et mod_info, vous pouvez utiliser

./configure --enable-dav --enable-info

ou autrement:

./configure --enable-modules="dav info"

De plus, l�identifiant all ou most peut �tre utilis� pour activer tous ou la plus part des modules. Vous pouvez donc aussi de la m�me mani�re enlever les modules avec --disable-MODULE option. Par exemple, pour ajouter tous les modules en DSO sauf mod_info vous pouvez utiliser�:

./configure --enable-mods-shared=all --disable-info

En plus des modules standard, Apache 2.0 propose un choix de Modules Multi-Processing (MPMs). Un et un seul MPM peut �tre inclus dans le processus de compilation. Les MPM par d�faut et par plateformes sont list�s dans la MPM documentation page, mais peuvent �tre modifi�s avec la commande configure.

--with-mpm=NAME
Choisit le MPM NAME.

DBM

Quelques fonctionnalit�s d�Apache utilisent mod_auth_dbm et mod_rewrite's DBM RewriteMap utilise des base de donn�es de paires clefs/valeur pour des consultations rapides d�information. Apache inclus SDBM et son code source, pour que la base de donn�e soit toujours disponible. Si vous voulez utiliser un autre type de base de donn�es, les options suivantes de configure sont disponibles:

--with-gdbm[=path]
--with-ndbm[=path]
--with-berkeley-db[=path]
Si aucun path n�est sp�cifi�, Apache ira chercher dans les fichiers include et librairies des emplacements par d�faut.Un path explicite imposera � Apache d�aller chercher dans path/lib et le path/include pour les fichiers concern�s. Pour finir, le path peurt contenir des chemins d�include et de librairies s�par�s par des virgules.

Suexec

Apache inclus un support de programme appel� suexec qui peut �tre utilis� pour isoler des CGIs. Cependant, si suexec n�est pas bien configur�, il peut causer de s�rieux probl�mes de s�curit�. Vous devez donc lire attentivement la documentation suexec avant d�impl�menter cette fonctionnalit�.

top

Compilation

Vous pouvez maintenant compiler les differentes parties qui composent le package Apache en lan�ant simplement la commande:

$ make

Un peu de patience ici, une configuration basique prend environ 3 minutes pour compiler sur un PIII/Linux 2.2, Mais peut varier sensiblement en fonction de votre mat�riel et du nombre de modules que vous avez activ�.

top

Installation

Vous pouvez maintenant installer Apache dans l�emplacement sp�cifi� lors de la configuration PREFIX (voir l�option --prefix ci-dessus) en tappant:

$ make install

Si vous upgradez, l�installation n�effacera pas vos fichier de configuration ou documents.

top

Optimisation

Il est temps de configurer et optimiser votre serveur HTTPd Apache en �ditant les fichiers de configuration situ�s dans PREFIX/conf/.

$ vi PREFIX/conf/httpd.conf

Consultez le manuel d�Apache dans docs/manual/ ou http://httpd.apache.org/docs-2.0/ pour une documentation compl�te des directives de configuration.

top

Tests

Vous pouvez maintenant d�marrer votre server HTTPd Apache en tappant�:

$ PREFIX/bin/apachectl start

et vous devriez pouvoir consulter votre premier document avec l�URL http://localhost/. La page Web que vous voyez est param�tr�e avec la directive DocumentRoot qui habituellement contient PREFIX/htdocs/. Et stopper le serveur en tappant:

$ PREFIX/bin/apachectl stop

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to