<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--English revision 1.34 -->
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<TITLE>Démarrage 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">Démarrage d'Apache</H1>

<ul>
<li><a href="#windows">Démarrage d'Apache sur Windows</a></li>
<li><a href="#unix">Démarrage d'Apache sur Unix</a>
<ul>
<li><a href="#errors">Erreurs durant l'initialisation</a></li>
<li><a href="#boot">Démarrage à l'initialisation du système</a></li>
<li><a href="#info">Informations complémentaires</a></li>
</ul>
</li>
</ul>
<hr>

<h2><a name="windows">Démarrage d'Apache sur Windows</h2>

<p>Sur Windows, Apache est normalement lancé en tant que service sur
Windows NT, ou en tant qu'application en mode console sur Windows 95. Pour plus
de détails, voir 
<A HREF="windows.html#run">lancer Apache pour Windows</A>.</p>

<h2>Démarrage d'Apache sur Unix</h2>

<p>Sur Unix, le programme <code>httpd</code> est lancé en tant que 
démon qui s'exécute en tâche de fond pour traiter les
requêtes. Il est possible d'invoquer Apache par le démon 
Internet <CODE>inetd</CODE> à chaque fois qu'une connexion au service
HTTP est faite (if faut pour cela utiliser la directive  <A
HREF="mod/core.html#servertype">ServerType</A>) mais cela n'est pas 
recommandé.</p>

<p>Si le <a href="mod/core.html#port">Port</a> spécifié dans le
fichier de configuration est le port par défaut 80 (ou tout autre port 
inérieur à 1024), il est alors nécessaire
d'avoir les privilèges root pour lancer Apache. Une fois que 
l'initialisation du serveur s'est achevée ainsi que quelques activités 
préliminaires telles que l'ouverture des fichiers de trace, 
le serveur lance un certain nombre de processus <em>fils</em> ayant pour 
rôle d'attendre et de répondre 
aux requêtes des clients. Le processus père <code>httpd</code>
continue à s'exécuter avec les privilèges root, mais les 
processus fils s'exécute sous un utilisateur avec moins de privilèges.
Ceci est contrôlé par les directives de création de 
<a href="server-wide.html#process">processus</a></p>

<p>La première chose qu'<code>httpd</code> fait lorsqu'il est appelé
est de chercher et lire le <a href="configuring.html">fichier de configuration</a>
<code>httpd.conf</code>. L'emplacement de ce fichier est défini à la
compilation, mais il est possible de spécifier son emplacement à 
l'exécution en utilisant l'option <code>-f</code>. Exemple :  

<blockquote><code> /usr/local/apache/bin/httpd -f
/usr/local/apache/conf/httpd.conf </code></blockquote>

<p>Comme alternative à l'appel direct de l'exécutable <code>httpd</code>
un script appelé <a href="programs/apachectl.html">apachectl</a> est fourni
qui permet de contrôler le processus démon avec des commandes simples
telles que  <code>apachectl start</code> ou <code>apachectl stop</code>.</p>

<p>Si tout ce passe correctement durant l'initialisation, le serveur se détache du 
terminal et l'invite de commande réapparaît presque immédiatement. Ceci
indique que le serveur est actif et s'exécute. Vous pouvez utiliser un 
navigateur pour vous connecter au serveur et voir la page de test située 
dans le répertoire <a href="mod/core.html#documentroot">DocumentRoot</a>
ainsi qu'une copie locale de la documentation à partir d'un lien de cette page. 

<h3><a name="errors">Erreurs durant l'initialisation</a></h3>

<p>Si Apache rencontre un problème fatal durant l'initialisation, il écrira, 
avant de se terminer, un message décrivant le problème, soit sur la 
console, soit dans le fichier  <a href="mod/core.html#errorlog">ErrorLog</a>.
Un des messages les plus courants est "<code>Unable to bind to Port
...</code>". Ce message est généralement dû à
<ul>
<li>une tentative de lancer le serveur sur un port privilégié alors
que vous n'êtes pas connecté comme utilisateur root, ou à</li>
<li>une tentative de lancer le serveur alors qu'une autre instance d'Apache ou 
d'un autre serveur web est déjà connectée à ce port.</li>
</ul>
<p>Pour plus d'informations sur la correction des problèmes, consultez 
la  <a href="misc/FAQ.html">FAQ</a> d'Apache.</p>
  
<h3><a name="boot">Démarrage à l'initialisation du système</a></h3>
<p>Si vous souhaitez que votre serveur continue à s'exécuter après
une relance du système, vous devez ajouter un appel à 
<code>httpd</code> ou <code>apachectl</code> dans votre fichier de lancement
du système (généralement  <code>rc.local</code> ou
un fichier dans un répertoire <code>rc.N</code>). Ceci lancera Apache
sous l'utilisateur root. Avant de le faire, vérifiez que votre serveur
est correctement configuré en termes de sécurité et de 
restrictions d'accès. Le script  <code>apachectl</code> est conçu
de manière à ce qu'il soit directement lié comme script
d'initialisation, mais assurez vous qu'il correspond aux besoins précis
de votre système.</p>

<h3><a name="info">Informations complémentaires</a></h3>
<p>Des informations complémentaires sur les options en ligne de commande
d'<a href="programs/httpd.html">httpd</a> et d'<a
href="programs/apachectl.html">apachectl</a> ainsi que des autres programmes
d'assistance inclus avec le serveur, sont disponibles à la page 
<a href="programs/">Serveur et programmes d'assistance</a>. Il existe 
également une documentation de tous les <a href="mod/">modules</a> inclus 
dans la distribution Apache ainsi que les <a
href="mod/directives.html">directives</a> qu'ils fournissent.</p>
  
<!--#include virtual="footer.html" -->
</BODY>
</HTML>
