1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content="HTML Tidy, see www.w3.org" />
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1" />
<title>Compilation et installation d'Apache</title>
</head>
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
<body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
vlink="#000080" alink="#FF0000">
<!--#include virtual="header.html" -->
<h1 align="CENTER">Compilation et installation d'Apache
1.3</h1>
<p>Ce document décrit la compilation et l'installation
d'Apache sur les systèmes Unix, en employant la
compilation et l'installation manuelle. Si vous souhaitez
utiliser l'interface de configuration semblable à
autoconf, il est conseillé de lire plutôt le
fichier INSTALL situé dans la racine des fichiers
sources de la distribution d'Apache. Pour compiler et installer
Apache sur d'autres plates-formes, consultez</p>
<ul>
<li><a href="windows.html">Utilisation d'Apache sur Microsoft
Windows</a></li>
<li><a href="cygwin.html">Utilisation d'Apache sur
Cygwin</a></li>
<li><a href="netware.html">Utilisation d'Apache sur Novell
Netware</a></li>
<li><a href="mpeix.html">Utilisation d'Apache sur HP
MPE/iX</a></li>
<li><a href="unixware.html">Utilisation d'Apache sur
UnixWare</a></li>
<li><a href="readme-tpf.html">Aperçu du portage
d'Apache sur TPF</a></li>
</ul>
<h2>Téléchargement d'Apache</h2>
Les informations sur la dernière version d'Apache se
trouvent sur le site web d'Apache à l'adresse <a
href="http://www.apache.org/">http://www.apache.org/</a>. Ce
site réunit la version actuelle, les récentes
versions beta, ainsi que la liste des sites miroirs web et ftp
anonymes.
<p>Si vous avez téléchargé une
distribution composée des binaires, passez directement
à l'<a href="#installing">installation d'Apache</a>. Sinon
lisez la section suivante afin de savoir comment compiler le
serveur.</p>
<h2>Compilation d'Apache</h2>
La compilation d'Apache se compose de trois étapes : la
sélection des <strong>modules</strong> que vous
souhaitez inclure dans le serveur; la création de la
configuration pour votre système d'exploitation; la
compilation les sources pour créer les
exécutables.
<p>La configuration d'Apache s'effectue dans le
répertoire <code>src</code> de la distribution. Entrez
dans ce répertoire.</p>
<ol>
<li>
Sélection des modules à compiler dans Apache
définis dans le fichier <code>Configuration</code>.
Décommentez les lignes correspondant aux modules que
vous souhaitez inclure (parmi les lignes commençant
par AddModule situées à la fin du fichier),
ou ajoutez de nouvelles lignes correspondant à des
modules additionnels que vous avez
téléchargés ou écrits. (Voir <a
href="misc/API.html">API.html</a> comme documentation
préliminaire à l'écriture de modules
Apache). Les utilisateurs avertis peuvent commenter
certains des modules actifs par défaut si ils sont
sûrs qu'ils n'en ont pas besoin (il faut
néanmoins faire attention, car la plupart des
modules actifs par défaut sont vitaux au bon
fonctionnement et à la sécurité du
serveur).
<p>Vous pouvez également lire les instructions
contenues dans le fichier <code>Configuration</code> afin
de savoir si devez activer certaines lignes
commençant par <code>Rule</code>.</p>
</li>
<li>
Création de la configuration pour votre
système d'exploitation. Normalement vous n'avez
qu'à exécuter le script
<code>Configure</code> comme décrit ci-dessous.
Cependant si le script échoue ou si vous avez des
besoins particuliers (par exemple inclure une librairie
nécessaire à un module optionnel) vous devrez
modifier une ou plusieurs des options contenues dans le
fichier <code>Configuration</code> : <code>EXTRA_CFLAGS,
LIBS, LDFLAGS, INCLUDES</code>.
<p>Lancement du script <code>Configure</code> :</p>
<blockquote>
<pre>
% Configure
Using 'Configuration' as config file
+ configured for <whatever> platform
+ setting C compiler to <whatever> *
+ setting C compiler optimization-level to <whatever> *
+ Adding selected modules
+ doing sanity check on compiler and options
Creating Makefile in support
Creating Makefile in main
Creating Makefile in os/unix
Creating Makefile in modules/standard
</pre>
</blockquote>
(*: selon le fichier Configuration et votre système,
Configure peut ne pas afficher ces lignes).
<p>Ceci crée un fichier Makefile qui sera
utilisé lors de l'étape trois. Il crée
également un fichier Makefile dans le
répertoire <code>support</code>, pour compiler les
programmes optionnels d'assistance.</p>
<p>(Si vous souhaitez maintenir différentes
configurations, <code>Configure</code> accepte une option
lui disant de lire un autre fichier de configuration, comme
: <code>Configure -file Configuration.ai</code>).</p>
</li>
<li>
Compilation des sources. Tapez :
<pre>
make
</pre>
</li>
</ol>
Les modules contenus dans la distribution Apache sont ceux que
nous avons testés et qui ont été
utilisés par plusieurs membres de l'équipe de
développement d'Apache. Les modules additionnels
proposés par les membres ou par d'autres contributeurs
correspondant à des besoins ou des fonctions
spécifiques sont disponibles à l'adresse <<a
href="http://www.apache.org/dist/httpd/contrib/modules/">http://www.apache.org/dist/httpd/contrib/modules/</a>>.
Des instructions sont fournies sur cette page pour lier ces
modules au noyau d'Apache.
<h2><a id="installing" name="installing">Installation
d'Apache</a></h2>
Vous devez avoir un exécutable appelé
<code>httpd</code> dans le répertoire <code>src</code>.
Une distribution des binaires doit fournir ce fichier.
<p>La prochaine étape est d'installer le programme et de
le configurer. Apache est conçu pour être
configuré et lancé à partir du même
groupe de répertoires que celui où il a
été compilé. Si vous souhaitez le lancer
d'un autre emplacement, créer un répertoire et y
copier les répertoires <code>conf</code>,
<code>logs</code> et <code>icons</code>. Dans tous les cas
lisez le document <a
href="misc/security_tips.html#serverroot">trucs sur la
sécurité</a> qui décrit comment affecter
les droits sur le répertoire racine du serveur.</p>
<p>L'étape suivante est la modification des fichiers de
configuration du serveur. Cela consiste à définir
différentes <strong>directives</strong> dans les trois
fichiers centraux de configuration. Par défaut ces
fichiers sont situés dans le répertoire
<code>conf</code> et s'appellent <code>srm.conf</code>,
<code>access.conf</code> et <code>httpd.conf</code>. Pour vous
aider, les mêmes fichiers existent dans le
répertoire <code>conf</code> de la distribution et sont
appelés <code>srm.conf-dist</code>,
<code>access.conf-dist</code> et <code>httpd.conf-dist</code>.
Copiez ou renommez ces fichiers en supprimant le
<code>-dist</code> pour le nouveau nom. Ensuite éditez
chacun de ces fichiers. Lisez attentivement les commentaires de
chacun de ces fichiers. Une mauvaise configuration de ces
fichiers empêcherait votre serveur de démarrer, ou
introduirait un problème de sécurité. Vous
devez également trouver dans le répertoire
<code>conf</code> un fichier <code>mime.types</code>.
Généralement, ce fichier n'a pas besoin
d'être modifié.</p>
<p>Premièrement éditez le fichier
<code>httpd.conf</code>. Celui ci fixe les paramètres
généraux du serveur : le numéro de port,
l'utilisateur qui l'exécute, etc. Ensuite éditez
le fichier <code>srm.conf</code>. Ce fichier définit la
racine de l'arborescence des documents, les fonctions
spéciales telles que les pages HTML dynamiques,
l'analyse des imagemap, etc. Enfin, éditez le fichier
<code>access.conf</code> pour au moins définir les
schémas d'accès de base.</p>
<p>En plus de ces trois fichiers, le comportement du serveur
peut être configuré dans chaque répertoire
en utilisant les fichiers <code>.htaccess</code> pour les
répertoires accédés par le serveur.</p>
<h3>Définissez l'heure du système correctement
!</h3>
Un bon fonctionnement d'un site web public nécessite une
heure juste, car des éléments du protocole HTTP
sont exprimés en termes de date et heure du jour. Il est
donc temps de chercher comment configurer NTP ou un autre
produit de synchronisation temporelle sur votre système
UNIX, ou un équivalent sous NT.
<h3>Démarrage et arrêt du serveur</h3>
Pour démarrer le serveur, exécutez
<code>httpd</code>. Il cherchera le fichier
<code>httpd.conf</code> à l'emplacement
spécifié lors de la compilation (par
défaut <code>/usr/local/apache/conf/httpd.conf</code>).
Si ce fichier est situé autre part, vous pouvez indiquer
son emplacement en utilisant l'option -f. Par exemple :
<pre>
/usr/local/apache/httpd -f /usr/local/apache/conf/httpd.conf
</pre>
Si tout se passe bien, vous devez vous retrouver de nouveau sur
l'invite de commande. Ceci indique que le serveur est actif et
s'exécute. Si quelque chose se passe mal durant
l'initialisation du serveur, un message d'erreur s'affichera
à l'écran. Si le serveur démarre
correctement, vous pouvez utiliser votre navigateur, vous
connecter au serveur et lire la documentation. Si vous lancez
le navigateur à partir de la machine où
s'exécute le serveur et que vous utilisez le port par
défaut 80, une URL valide à taper dans votre
navigateur est :
<pre>
http://localhost/
</pre>
<p>Notez que lors du démarrage du serveur un certain
nombre de processus <em>fils</em> sont créés afin
de traiter les requêtes. Si vous démarrez le
serveur en étant root, le processus père
s'exécutera avec les droits de root, tandis que les
processus fils s'exécuteront avec les droits de
l'utilisateur défini dans le fichier httpd.conf.</p>
<p>Si au lancement de <code>httpd</code> celui ci indique qu'il
n'arrive pas à s'attacher à une adresse, cela
signifie soit qu'un autre processus s'exécute
déjà en utilisant le numéro de port
défini dans la configuration d'Apache, soit que vous
essayez de lancer httpd en tant qu'utilisateur normal et que
vous essayez d'utiliser un port inférieur à 1024
(comme le port 80 par exemple).</p>
<p>Si le serveur ne s'exécute pas, lisez le message
affiché quand vous lancez httpd. Vous devez
également vérifier le fichier error_log pour plus
d'informations (dans la configuration par défaut ce
fichier est situé dans le fichier <code>error_log</code>
du répertoire <code>logs</code>).</p>
<p>Si vous voulez que votre serveur continue à
s'exécuter après une relance du système,
vous devez ajouter un appel à <code>httpd</code> dans
vos fichiers de démarrage du système (typiquement
<code>rc.local</code> ou un fichier dans un répertoire
<code>rc.<em>N</em></code>). Ceci lancera le serveur Apache
avec les droits de root. Avant de le faire, vérifiez que
votre serveur est correctement configuré au niveau de la
sécurité et des restrictions d'accès.</p>
<p>Pour arrêter Apache, envoyez au processus parent un
signal TERM. Le PID de ce processus est écrit dans le
fichier <code>httpd.pid</code> situé dans le
répertoire <code>logs</code> (à moins qu'Apache
soit configuré autrement). N'essayez pas de supprimer
les processus fils car d'autres seront créés par
le processus père. Une commande typique pour
arrêter le serveur est :</p>
<pre>
kill -TERM `cat /usr/local/apache/logs/httpd.pid`
</pre>
<p>Pour plus d'information sur les options de la ligne de
commande, sur les fichiers de configuration et les fichiers de
trace, voir <a href="invoking.html">Démarrage
d'Apache</a>. Pour un guide de référence de
toutes les directives Apache autorisées par les modules
distribués, voir les <a
href="mod/directives.html">directives Apache</a> .</p>
<h2>Compilation des programmes d'assistance</h2>
En plus du serveur <code>httpd</code> qui est compilé et
configuré comme ci dessus, Apache inclut un certain
nombre de programmes d'assistance. Ceux ci ne sont pas
compilés par défaut. Les programmes d'assistance
sont situés dans le répertoire
<code>support</code> de la distribution. Pour les compiler,
allez dans ce répertoire et tapez :
<pre>
make
</pre>
<!--#include virtual="footer.html" -->
</body>
</html>
|