mirror of
https://github.com/apache/httpd.git
synced 2025-05-28 13:41:30 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@566239 13f79535-47bb-0310-9956-ffa450edef68
395 lines
19 KiB
Plaintext
395 lines
19 KiB
Plaintext
<?xml version="1.0" encoding="ISO-8859-1" ?>
|
|
<!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
|
|
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
|
|
<!-- $LastChangedRevision English document : 527129 $ -->
|
|
<!-- French translation : Lucien GENTIS -->
|
|
<!-- $LastChangedRevision: 2007062401 $ -->
|
|
|
|
<!--
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
this work for additional information regarding copyright ownership.
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
(the "License"); you may not use this file except in compliance with
|
|
the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<manualpage metafile="install.xml.meta">
|
|
|
|
<title>Compilation et installation</title>
|
|
|
|
<summary>
|
|
|
|
<p>Ce document couvre l'installation et la compilation du serveur
|
|
HTTP Apache
|
|
sur les systèmes Unix et similaires seulement. Pour la compilation et
|
|
l'installation sous Windows, voir <a
|
|
href="platform/windows.html">Utiliser Apache HTTPd avec Microsoft
|
|
Windows</a>. Pour les autres plateformes, se référer à la documentation par
|
|
<a href="platform/">plateforme</a>.</p>
|
|
|
|
<p>Apache HTTPd utilise <code>libtool</code> et <code>autoconf</code>
|
|
afin de créer un environnement de construction similaire à la plupart
|
|
des projets Open Source .</p>
|
|
|
|
<p>Si vous effectuez une mise à jour depuis une version mineure vers
|
|
la suivante (par exemple, 2.2.50 à 2.2.51), veuillez passer à la section
|
|
<a href="#upgrading">mise à jour</a>.</p>
|
|
|
|
</summary>
|
|
|
|
<seealso><a href="programs/configure.html">Configuration de l'arborescence
|
|
des sources</a></seealso>
|
|
<seealso><a href="invoking.html">Démarrer le serveur HTTP Apache</a></seealso>
|
|
<seealso><a href="stopping.html">Arrêt et redémarrage</a></seealso>
|
|
|
|
<section id="overview"><title>Aperçu pour les plus pressés</title>
|
|
|
|
<table>
|
|
<columnspec><column width=".13"/><column width=".80"/></columnspec>
|
|
<tr>
|
|
<td><a href="#download">Téléchargement</a></td>
|
|
|
|
<td><code>$ lynx http://httpd.apache.org/download.cgi</code>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#extract">Extraction</a></td>
|
|
|
|
<td><code>$ gzip -d httpd-<em>NN</em>.tar.gz<br />
|
|
$ tar xvf httpd-<em>NN</em>.tar<br />
|
|
$ cd httpd-<em>NN</em></code></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#configure">Configuration</a></td>
|
|
|
|
<td><code>$ ./configure --prefix=<em>PREFIX</em></code>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#compile">Compilation</a></td>
|
|
|
|
<td><code>$ make</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#install">Installation</a></td>
|
|
|
|
<td><code>$ make install</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#customize">Personnalisation</a></td>
|
|
|
|
<td><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code> </td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td><a href="#test">Test</a></td>
|
|
|
|
<td><code>$ <em>PREFIX</em>/bin/apachectl -k start</code>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p><em>NN</em> doit être remplacé par le numéro de version courant,
|
|
et <em>PREFIX</em> par le
|
|
chemin du répertoire d'installation. Si
|
|
<em>PREFIX</em> n'est pas spécifié, le chemin du répertoire
|
|
d'installation prendra sa valeur par défaut, à savoir
|
|
<code>/usr/local/apache2</code>.</p>
|
|
|
|
<p>Chaque étape du processus de compilation et d'installation est
|
|
décrite plus en détails ci-dessous, à commencer par les prérequis
|
|
pour compiler et installer le serveur HTTP Apache.</p>
|
|
</section>
|
|
|
|
<section id="requirements"><title>Prérequis</title>
|
|
|
|
<p>Les prérequis pour la construction d'Apache HTTPd sont les suivants:</p>
|
|
|
|
<dl>
|
|
<dt>Espace disque</dt>
|
|
<dd>Assurez-vous d'avoir au moins 50 MB d'espace disque disponible
|
|
temporaire. Après l'installation Apache occupe
|
|
approximativement 10 MB d'espace disque. L'espace disque réellement
|
|
nécessaire va varier considérablement en fonction de vos options
|
|
de configuration et de la présence éventuelle de modules tiers.</dd>
|
|
|
|
<dt>Compilateur ANSI-C et système de construction</dt>
|
|
<dd>Vous devez disposer d'un compilateur ANSI-C. Le compilateur <a
|
|
href="http://www.gnu.org/software/gcc/gcc.html">GNU C
|
|
(GCC)</a> de la <a
|
|
href="http://www.gnu.org/">Free Software Foundation (FSF)</a>
|
|
est recommandé. Si vous ne possédez pas GCC,
|
|
assurez-vous au moins que votre compilateur soit compatible ANSI.
|
|
En outre, votre <code>PATH</code> doit contenir
|
|
les outils de construction de base tels que <code>make</code>.</dd>
|
|
|
|
<dt>Connaissance de l'heure exacte</dt>
|
|
<dd>Les éléments du protocole HTTP font référence à l'heure du jour.
|
|
Par conséquent, il est nécessaire d'équiper votre système d'un
|
|
dispositif de synchronisation du temps. Les programmes
|
|
<code>ntpdate</code> ou <code>xntpd</code>, basés sur le protocole NTP,
|
|
sont couramment utilisés à cet effet.
|
|
Voir la <a href="http://www.ntp.org">page d'accueil de NTP</a>
|
|
pour plus de détails à propos du logiciel NTP et des serveurs
|
|
de temps publics.</dd>
|
|
|
|
<dt><a href="http://www.perl.org/">Perl 5</a>
|
|
[OPTIONNEL]</dt>
|
|
<dd>L'interpréteur Perl 5 (les versions 5.003 ou supérieures conviennent)
|
|
est nécessaire pour l'exécution de certains scripts comme
|
|
<program>apxs</program> ou <program>dbmmanage</program>
|
|
(qui sont écrits en Perl). Si vous disposez de plusieurs interpréteurs
|
|
Perl (par exemple, une installation globale Perl 4, et
|
|
votre installation personnelle de Perl 5), il vous faut utiliser l'option
|
|
<code>--with-perl</code> (voir ci-dessous) afin de vous assurer que le
|
|
bon interpréteur sera utilisé par <program>configure</program>.
|
|
Si le script <program>configure</program> ne trouve pas d'interpréteur
|
|
Perl 5, vous ne pourrez pas utiliser les scripts qui en ont besoin.
|
|
Bien entendu, vous pourrez tout de même construire et utiliser
|
|
Apache httpd.</dd>
|
|
|
|
</dl>
|
|
</section>
|
|
|
|
<section id="download"><title>Téléchargement</title>
|
|
|
|
<p>Le serveur HTTP Apache peut être téléchargé à partir du
|
|
<a href="http://httpd.apache.org/download.cgi">site de téléchargement
|
|
du serveur HTTP Apache</a>, qui fournit la liste de nombreux miroirs.
|
|
Il sera plus commode à la plupart des utilisateurs d'Apache HTTPd sur les
|
|
systèmes UNIX ou similaires de télécharger et de compiler
|
|
la version sources. Le processus de construction (décrit ci-dessous) est
|
|
simple, et vous permet de personnaliser votre serveur selon vos besoins.
|
|
En outre, les versions binaires sont souvent plus anciennes que les
|
|
dernières versions sources Si vous téléchargez une version binaire,
|
|
suivez les instructions décrites dans le fichier
|
|
<code>INSTALL.bindist</code> inclus dans la distribution.</p>
|
|
|
|
<p>Après le téléchargement, il est important de vérifier que vous
|
|
disposez d'une version complète et non modifiée du serveur HTTP Apache.
|
|
Vous pouvez le faire en testant l'archive téléchargée à l'aide de
|
|
la signature PGP. Vous trouverez les détails de cette opération sur la <a
|
|
href="http://httpd.apache.org/download.cgi#verify"
|
|
>page de téléchargement</a> ainsi qu'un exemple précis décrivant <a
|
|
href="http://httpd.apache.org/dev/verification.html">l'utilisation de
|
|
PGP</a>.</p>
|
|
|
|
</section>
|
|
|
|
<section id="extract"><title>Extraction</title>
|
|
|
|
<p>L'extraction des sources depuis l'archive Apache HTTPd consiste
|
|
simplement à décompresser et à désarchiver cette dernière :</p>
|
|
|
|
<example>
|
|
$ gzip -d httpd-<em>NN</em>.tar.gz<br />
|
|
$ tar xvf httpd-<em>NN</em>.tar
|
|
</example>
|
|
|
|
<p>Ceci créera, dans le répertoire courant, un nouveau répertoire
|
|
contenant le code source de la distribution. Vous devrez vous positionner
|
|
dans ce répertoire avant de procéder à la compilation du serveur.</p>
|
|
</section>
|
|
|
|
<section id="configure"><title>Configuration de l'arborescence des sources</title>
|
|
|
|
<p>L'étape suivante consiste à configurer l'arborescence des sources
|
|
d'Apache HTTPd en fonction de votre plateforme et de vos besoins personnels.
|
|
Le script <program>configure</program>, situé à la racine du
|
|
répertoire de la distribution, a été conçu à cet effet.
|
|
(Les développeurs qui téléchargent
|
|
une version non officielle de l'arborescence des sources d'Apache HTTPd
|
|
devront disposer de
|
|
<code>autoconf</code> et <code>libtool</code> et
|
|
exécuter <code>buildconf</code> avant de passer à l'étape suivante,
|
|
ce qui n'est pas nécessaire pour les versions officielles.)</p>
|
|
|
|
<p>Pour configurer l'arborescence des sources avec les valeurs par défaut
|
|
pour toutes les options, entrez simplement <code>./configure</code>.
|
|
Pour modifier les valeurs des options, <program>configure</program>
|
|
comprend toute une variété de variables et
|
|
d'options de ligne de commande.</p>
|
|
|
|
<p>L'option la plus importante <code>--prefix</code> est le chemin
|
|
du répertoire d'installation du serveur HTTP Apache, car Apache doit être configuré
|
|
en fonction de ce chemin pour pouvoir fonctionner correctement.
|
|
Il est possible de définir plus finement le chemin d'installation des fichiers
|
|
à l'aide d'<a href="programs/configure.html#installationdirectories">
|
|
options supplémentaires de configure</a>.</p>
|
|
|
|
<p>À ce niveau, vous pouvez aussi spécifier de quelles <a
|
|
href="programs/configure.html#optionalfeatures">fonctionnalités</a> vous
|
|
voulez disposer dans Apache HTTPd en activant ou désactivant des <a
|
|
href="mod/">modules</a>. Apache est fourni avec un jeu de modules de
|
|
<a href="mod/module-dict.html#Status">Base</a> inclus par défaut.
|
|
Les autres modules sont activés à l'aide de l'option
|
|
<code>--enable-<var>module</var></code>, où
|
|
<var>module</var> est le nom du module sans la chaîne
|
|
<code>mod_</code> et où tout caractère de soulignement est converti
|
|
en tiret. Vous pouvez aussi choisir de compiler les modules comme
|
|
<a href="dso.html">objets partagés (DSOs)</a> -- qui peuvent être chargés
|
|
ou déchargés à l'exécution -- à l'aide de l'option
|
|
<code>--enable-<var>module</var>=shared</code>. D'une manière similaire,
|
|
vous pouvez désactiver des modules de base à l'aide de l'option
|
|
<code>--disable-<var>module</var></code> option. Faites très attention
|
|
en utilisant ces options, car <program>configure</program> n'est pas en
|
|
mesure de vous avertir si le module que vous avez spécifié n'existe pas;
|
|
il ignorera tout simplement l'option.</p>
|
|
|
|
<p>En outre, vous devrez peut-être fournir au script
|
|
<program>configure</program> des informations supplémentaires sur
|
|
le chemin de votre compilateur, de vos librairies, ou de vos fichiers
|
|
d'en-têtes. A cet effet, vous pouvez passer des options de ligne de
|
|
commande ou des variables d'environnement au script
|
|
<program>configure</program>. Pour plus d'informations, voir la
|
|
page de manuel de <program>configure</program>.</p>
|
|
|
|
<p>Pour vous faire une idée des possibilités qui s'offrent à vous, voici
|
|
un exemple typique de compilation d'Apache avec le répertoire
|
|
d'installation <code>/sw/pkg/apache</code>, un compilateur et des drapeaux
|
|
particuliers et les deux modules additionnels <module>mod_rewrite</module>
|
|
et <module>mod_speling</module> qui pourront être chargés plus tard
|
|
à l'aide du mécanisme DSO:</p>
|
|
|
|
<example>
|
|
$ CC="pgcc" CFLAGS="-O2" \<br />
|
|
./configure --prefix=/sw/pkg/apache \<br />
|
|
--enable-rewrite=shared \<br />
|
|
--enable-speling=shared
|
|
</example>
|
|
|
|
<p>Quand <program>configure</program> est lancé, il peut prendre
|
|
plusieurs minutes pour tester la disponibilité des fonctionnalités
|
|
au sein de votre système, et construire les Makefiles qui seront utilisés
|
|
par la suite pour compiler le serveur.</p>
|
|
|
|
<p>Vous trouverez une description détaillée des options de
|
|
<program>configure</program> dans sa page de manuel.</p>
|
|
</section>
|
|
|
|
<section id="compile"><title>Construction</title>
|
|
|
|
<p>Vous pouvez maintenant construire les différents éléments qui
|
|
composent le paquet Apache HTTPd en lançant tout simplement la commande :</p>
|
|
|
|
<example>$ make</example>
|
|
|
|
<p>Vous devez être patient, car il faut plusieurs minutes pour compiler
|
|
une configuration de base, et cette durée peut varier considérablement
|
|
en fonction de votre matériel et du nombre de modules que vous avez activés.</p>
|
|
</section>
|
|
|
|
<section id="install"><title>Installation</title>
|
|
|
|
<p>Il est temps maintenant d'installer le paquet dans le répertoire
|
|
d'installation défini par <em>PREFIX</em> (voir plus haut l'option
|
|
<code>--prefix</code>) en lançant:</p>
|
|
|
|
<example>$ make install</example>
|
|
|
|
<p>Si vous effectuez une mise à jour, l'installation n'écrasera pas
|
|
vos fichiers de configuration ou autres documents.</p>
|
|
</section>
|
|
|
|
<section id="customize"><title>Personnalisation</title>
|
|
|
|
<p>Ensuite, vous pourrez personnaliser votre Serveur HTTP Apache en
|
|
éditant les <a href="configuring.html">fichiers de configuration</a>
|
|
situés dans <code><em>PREFIX</em>/conf/</code>.</p>
|
|
|
|
<example>$ vi <em>PREFIX</em>/conf/httpd.conf</example>
|
|
|
|
<p>Consultez le manuel du serveur HTTP Apache situé dans
|
|
<a href="./">docs/manual/</a> ou
|
|
<a href="http://httpd.apache.org/docs/&httpd.docs;/"
|
|
>http://httpd.apache.org/docs/&httpd.docs;/</a> pour la version la plus
|
|
récente de ce manuel et la liste complète des <a
|
|
href="mod/directives.html">directives de configuration</a> disponibles.</p>
|
|
</section>
|
|
|
|
<section id="test"><title>Test</title>
|
|
|
|
<p>Vous pouvez maintenant <a href="invoking.html">démarrer</a> votre
|
|
Serveur HTTP Apache en lançant:</p>
|
|
|
|
<example>$ <em>PREFIX</em>/bin/apachectl -k start</example>
|
|
|
|
<p>Vous devriez alors pouvoir requérir votre premier document
|
|
à l'aide de l'URL <code>http://localhost/</code>. La page web que vous
|
|
voyez est située dans le répertoire défini par la directive
|
|
<directive module="core">DocumentRoot</directive>,
|
|
qui est généralement <code><em>PREFIX</em>/htdocs/</code>.
|
|
Pour <a href="stopping.html">arrêter</a> le serveur, lancez:</p>
|
|
|
|
<example>$ <em>PREFIX</em>/bin/apachectl -k stop</example>
|
|
</section>
|
|
<section id="upgrading"><title>Mise à jour</title>
|
|
|
|
<p>La première étape d'une mise à jour consiste à lire l'annonce de la
|
|
sortie de la nouvelle version et le fichier <code>CHANGES</code>
|
|
dans la distribution des sources afin de déceler toutes les modifications
|
|
qui pourraient affecter votre site. Lors d'un changement majeur de version
|
|
(par exemple de 1.3 à 2.0 ou de 2.0 à 2.2),
|
|
il y aura certainement des différences importantes quant à la
|
|
configuration de la compilation et de l'exécution qui nécessiteront des
|
|
ajustements manuels. Tous les
|
|
modules devront aussi être mis à jour pour qu'ils s'adaptent aux
|
|
changements de l'API des modules.</p>
|
|
|
|
<p>La mise à jour d'une version mineure à la suivante (par exemple, de
|
|
2.2.55 à 2.2.57) est plus aisée. Le processus <code>make install</code>
|
|
n'écrasera aucun de vos documents existants, fichiers de log,
|
|
ou fichiers de configuration. De plus, les développeurs font tout
|
|
leur possible pour éviter les changements entraînant une
|
|
incompatibilité dans les options de
|
|
<program>configure</program>, la configuration de l'exécution, ou l'API
|
|
des modules d'une version mineure à l'autre. Dans la plupart des cas,
|
|
vous pourrez utiliser une ligne de commande
|
|
<program>configure</program> identique, le même fichier de configuration,
|
|
et tous vos modules continueront de fonctionner.</p>
|
|
|
|
<p>Pour effectuer une mise à jour entre deux versions mineures,
|
|
commencez par trouver le fichier
|
|
<code>config.nice</code> dans le répertoire de <code>construction</code>
|
|
de votre serveur installé ou à la racine de l'arborescence des sources
|
|
de votre ancienne installation. Il contient la reproduction exacte de la
|
|
ligne de commande <program>configure</program> que vous avez utilisée pour
|
|
configurer l'arborescence des sources. Ensuite, pour mettre à jour
|
|
l'ancienne version vers la nouvelle,
|
|
il vous suffit de copier le fichier <code>config.nice</code> dans
|
|
l'arborescence des sources de la nouvelle version, de l'éditer pour
|
|
effectuer toute modification souhaitée, et de lancer:</p>
|
|
|
|
<example>
|
|
$ ./config.nice<br />
|
|
$ make<br />
|
|
$ make install<br />
|
|
$ <em>PREFIX</em>/bin/apachectl -k graceful-stop<br />
|
|
$ <em>PREFIX</em>/bin/apachectl -k start<br />
|
|
</example>
|
|
|
|
<note type="warning">Vous devez toujours effectuer un test de la nouvelle
|
|
version dans votre environnement avant de la mettre en production.
|
|
Par exemple, vous pouvez installer et exécuter la nouvelle version
|
|
en parallèle avec l'ancienne en utilisant une option
|
|
<code>--prefix</code> et un port différents (en ajustant la directive
|
|
<directive module="mpm_common">Listen</directive>) afin de déceler toute
|
|
incompatibilité avant d'effectuer la mise à jour définitive.</note>
|
|
|
|
</section>
|
|
</manualpage>
|