logs.xml.fr revision 650ba5bfc49e73bf370f3cff32d3cdca004a2861
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster<!DOCTYPE manualpage SYSTEM "/style/manualpage.dtd">
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster<?xml-stylesheet type="text/xsl" href="/style/manual.fr.xsl"?>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster<!-- French translation : Lucien GENTIS -->
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster<!-- Reviewed by : Vincent Deffontaines -->
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster<!-- English Revision: 1174747:1300924 (outdated) -->
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Licensed to the Apache Software Foundation (ASF) under one or more
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster contributor license agreements. See the NOTICE file distributed with
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster this work for additional information regarding copyright ownership.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster The ASF licenses this file to You under the Apache License, Version 2.0
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (the "License"); you may not use this file except in compliance with
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster the License. You may obtain a copy of the License at
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Unless required by applicable law or agreed to in writing, software
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster distributed under the License is distributed on an "AS IS" BASIS,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster See the License for the specific language governing permissions and
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster limitations under the License.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Pour véritablement gérer un serveur web,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster il est nécessaire de disposer d'un
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster retour d'informations à propos de l'activité et des performances du
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster serveur, ainsi que de tout problème qui pourrait survenir. Le serveur HTTP
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Apache propose des fonctionnalités de journalisation souples et très
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster complètes. Ce document décrit comment configurer ces fonctionnalités de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journalisation et interpréter le contenu des journaux.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Le serveur HTTP Apache fournit toute une variété de mécanismes
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster différents pour la journalisation de tout ce qui peut se passer au
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster sein de votre serveur, depuis la requête initiale, en passant par le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster processus de mise en correspondance des URLs, et jusqu'à la fermeture
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de la connexion, y compris toute erreur pouvant survenir au cours du
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster traitement. De plus, certains modules tiers fournissent des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fonctionnalités de journalisation ou insèrent des entrées dans les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fichiers journaux existants, et les applications comme les programmes
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster CGI, les scripts PHP ou autres gestionnaires peuvent envoyer des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster messages vers le journal des erreurs du serveur.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Ce document décrit le fonctionnement des modules de journalisation
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fournis en standard avec le serveur httpd.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <title>Avertissement à propos de la sécurité</title>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Tout utilisateur qui a les droits en écriture sur le répertoire dans
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster lequel Apache httpd écrit ses journaux pourra quasi
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster certainement avoir accès à l'uid sous lequel le serveur est démarré, en
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'occurrence habituellement root. N'accordez <em>PAS</em> aux utilisateurs
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'accès en écriture au répertoire dans lequel les journaux sont stockés
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster sans savoir exactement quelles en seraient les conséquences ; voir le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster document <a href="misc/security_tips.html">conseils sur la sécurité</a>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster pour plus de détails.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>En outre, les journaux peuvent contenir des informations fournies
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster directement par un client, sans caractères d'échappement. Des clients mal
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster intentionnés peuvent donc insérer des caractères de contrôle dans les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journaux, et il convient par conséquent d'être très prudent lors de la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster manipulation des journaux bruts.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directivelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </directivelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le journal des erreurs du serveur, dont le nom et la localisation sont
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster définis par la directive <directive module="core">ErrorLog</directive>,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster est le journal le plus important. C'est dans celui-ci
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster que le démon Apache httpd va envoyer les informations de diagnostic et
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster enregistrer toutes les erreurs qui surviennent lors du traitement des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster requêtes. Lorsqu'un problème survient au démarrage du serveur ou pendant
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster son fonctionnement, la première chose à faire est de regarder dans ce
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journal, car il vous renseignera souvent sur le problème rencontré et
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster la manière d'y remédier.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le journal des erreurs est habituellement enregistré dans un fichier
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (en général <code>error_log</code> sur les systèmes de type Unix et
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <code>error.log</code> sur Windows et OS/2). Sur les systèmes de type Unix,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster le serveur peut aussi enregistrer ses erreurs dans
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <a href="#piped">rediriger vers un programme</a> par l'intermédiaire d'un
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster tube de communication (pipe).</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le format par défaut du journal des erreurs est descriptif et de forme
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster relativement libre. Certaines informations apparaissent cependant dans la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster plupart des entrées du journal. Voici un message typique
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster à titre d'exemple : </p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster [Wed Oct 11 14:32:52 2000] [error] [client 127.0.0.1]
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster client denied by server configuration:
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le premier champ de l'entrée du journal est la date et l'heure du
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster message. Le second champ indique la sévérité de l'erreur rapportée. La
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster directive <directive module="core">LogLevel</directive> permet de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster restreindre le type des erreurs qui doivent être enregistrées
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster dans le journal des erreurs en définissant leur niveau de sévérité. Le
ae2aee96fc0dc24ac5b108d0c40e1f3b735f4ca3Sam Fraser troisième champ contient l'adresse IP du client qui a généré l'erreur.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Vient ensuite le message proprement dit, qui indique dans ce cas que le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster serveur a été configuré pour interdire l'accès au client. Le serveur
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster indique le chemin système du document requis (et non
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster son chemin web).</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Une grande variété de messages différents peuvent apparaître dans le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journal des erreurs. La plupart d'entre eux sont similaires à l'exemple
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ci-dessus. Le journal des erreurs peut aussi contenir des informations de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster débogage en provenance de scripts CGI. Toute information qu'un script CGI
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster écrit sur la sortie d'erreurs standard <code>stderr</code> sera recopiée
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster telle quelle dans le journal des erreurs.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>La directive <directive module="core">ErrorLogFormat</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster vous permet de personnaliser le format du journal des erreurs, et de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster définir les informations à journaliser. Si
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <module>mod_unique_id</module> est présent, vous pouvez utiliser le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster drapeau <code>%L</code> à la fois dans le journal des erreurs et
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journal des accès, ce qui aura pour effet de générer un identifiant
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'entrée qui vous permettra de corréler les entrées du journal des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster erreurs avec celles du journal des accès.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Pendant la phase de test, il est souvent utile de visualiser en continu
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster le journal des erreurs afin de détecter tout problème éventuel. Sur les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster systèmes de type Unix, ceci s'effectue à l'aide de la commande :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster tail -f error_log
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>La directive <directive module="core">LogLevel</directive> permet
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de spécifier un niveau de sévérité de journalisation pour chaque
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster module. Vous pouvez ainsi résoudre un problème propre à un module particulier
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster en augmentant son volume de journalisation sans augmenter ce volume
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster pour les autres modules. Ceci est particulièrement utile lorsque
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster vous voulez obtenir des détails sur le fonctionnement de modules
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster comme <module>mod_proxy</module> ou <module>mod_rewrite</module>.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Pour ce faire, vous devez spécifier le nom du module dans votre
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster directive <directive>LogLevel</directive> :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogLevel info rewrite:trace5
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Dans cet exemple, le niveau de journalisation général est défini
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster à info, et à <code>trace5</code> pour <module>mod_rewrite</module>.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <note>Cette directive remplace les directives de journalisation par
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster module des versions précédentes du serveur, comme
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </modulelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directivelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">LogFormat</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_setenvif">SetEnvIf</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </directivelist>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le journal des accès au serveur
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster enregistre toutes les requêtes que traite
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ce dernier. La localisation et le contenu du journal des accès sont définis
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster par la directive <directive module="mod_log_config">CustomLog</directive>.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster La directive <directive module="mod_log_config">LogFormat</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster permet de simplifier la sélection du contenu du journal. Cette section
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster décrit comment configurer le serveur pour l'enregistrement des informations
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster dans le journal des accès.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Bien évidemment, le stockage d'informations dans le journal des accès
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster n'est que le point de départ de la gestion de la journalisation. L'étape
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster suivante consiste à analyser ces informations de façon à pouvoir en
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster extraire des statistiques utiles. L'analyse de journaux en général est en
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster dehors du sujet de ce document et ne fait pas vraiment partie intégrante
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster du travail du serveur web lui-même. Pour plus d'informations à propos de ce
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster sujet et des applications dédiées à l'analyse de journaux, vous pouvez vous
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster référer à <a href="http://dmoz.org/Computers/Software/Internet/
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Site_Management/Log_analysis/">Open Directory</a> ou
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <a href="http://dir.yahoo.com/Computers_and_Internet/Software/
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Internet/World_Wide_Web/Servers/Log_Analysis_Tools/">Yahoo</a>.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Différentes versions du démon Apache httpd utilisaient d'autres modules
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster et directives pour contrôler la journalisation des accès, à l'instar de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster mod_log_referer, mod_log_agent, et de la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive> rassemble
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster désormais les fonctionnalités de toutes les anciennes directives.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Le format du journal des accès est hautement configurable. Il est
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster défini à l'aide d'une chaîne de format qui ressemble sensiblement à la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster chaîne de format de style langage C de printf(1). Vous trouverez quelques
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster exemples dans les sections suivantes. Pour une liste exhaustive de ce que
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster peut contenir une chaîne de format, vous pouvez vous référer au chapitre
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <a href="mod/mod_log_config.html#formats">chaînes de format</a> de la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster documentation du module <module>mod_log_config</module>.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Voici une configuration typique pour le journal des accès :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%h %l %u %t \"%r\" %>s %b" common<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Ici est définie l'<em>identité</em> <code>common</code> qui est
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ensuite associée à une chaîne de format de journalisation particulière.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster La chaîne de format est constituée de directives débutant par le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster caractère %, chacune d'entre elles indiquant au serveur d'enregistrer
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster un élément particulier d'information. Des caractères littéraux peuvent
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster aussi être insérés dans la chaîne de format ; il seront copiés tels
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster quels dans le flux de sortie destiné à la journalisation.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Les guillemets (<code>"</code>) doivent être échappées en les faisant
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster précéder d'un anti-slash (<code>\</code>) afin qu'elles ne soient pas
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster interprétées comme la fin de la chaîne de format. La chaîne de format
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster peut aussi contenir les caractères de contrôle spéciaux
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "<code>\n</code>" et "<code>\t</code>" pour insérer respectivement
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster un passage à la ligne et une tabulation.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>La directive <directive module="mod_log_config">CustomLog</directive>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster définit un nouveau fichier journal en l'associant à l'identité
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster précédemment définie. Le chemin du nom de fichier associé au journal
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster des accès est relatif au chemin défini par la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="core">ServerRoot</directive>, sauf s'il
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster débute par un slash.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>La configuration ci-dessus va enregistrer les entrées de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journalisation selon un format connu sous le nom de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Common Log Format (CLF) pour "Format de journalisation standard".
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Ce format standard peut être produit par de nombreux serveurs web
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster différents et lu par de nombreux programmes d'analyse de journaux.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Les entrées de fichier journal générées selon le format CLF
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ressemblent à ceci :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster 127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Chaque partie de cette entrée de journal est décrite
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster dans ce qui suit.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dt><code>127.0.0.1</code> (<code>%h</code>)</dt>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>Il s'agit de l'adresse IP du client (l'hôte distant) qui a envoyé
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster la requête au serveur. Si la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="core">HostnameLookups</directive> est positionnée à
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <code>On</code>, le serveur va essayer de déterminer le nom de l'hôte
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster et de l'enregistrer à la place de l'adresse IP. Cette configuration
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster n'est cependant pas recommandée car elle peut ralentir le serveur de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster manière significative. Il est par conséquent préférable d'utiliser un
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster processeur d'analyse de journaux a posteriori
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster pour déterminer les noms d'hôte. L'adresse IP indiquée ici n'est pas
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster nécessairement l'adresse IP de la machine devant laquelle se trouve
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'utilisateur. Si un serveur mandataire s'intercale entre le serveur
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster et l'utilisateur, l'adresse indiquée sera celle du mandataire et non
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster celle de la machine à l'origine de la requête.</dd>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>Le "trait d'union" indique que la portion d'information
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster correspondante n'est pas disponible. Dans le cas présent, l'information
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster non disponible est l'identité (RFC 1413) du client telle que déterminée
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster par <code>identd</code> sur la machine cliente. Cette information est
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster très peu fiable et ne devrait jamais être utilisée, sauf dans le cas
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de réseaux internes étroitement contrôlés. Le démon httpd ne cherchera
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'ailleurs à obtenir cette information que si la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="core">IdentityCheck</directive> est positionnée
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>Il s'agit de l'identifiant utilisateur de la personne qui a
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster demandé le document, issu d'une authentification HTTP.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Ce même identifiant est en général fourni aux scripts CGI par
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'intermédiaire de la valeur de la variable d'environnement
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <code>REMOTE_USER</code>. Si le statut de la requête (voir plus loin)
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster est 401, cette identifiant n'est pas fiable car l'utilisateur n'est
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster pas encore authentifié. Si le document n'est pas protégé par
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster mot de passe, cette partie d'information sera représentée par
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "<code>-</code>", comme la partie précédente.</dd>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster L'heure à laquelle la requête a été reçue.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Le format est le suivant :
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <code>[jour/mois/année:heure:minutes:secondes zone]<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster jour = 2*chiffre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster mois = 3*lettre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster année = 4*chiffre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster heure = 2*chiffre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster minutes = 2*chiffre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster secondes = 2*chiffre<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster zone = (`+' | `-') 4*chiffre</code>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster </p>Il est possible de modifier le format d'affichage de l'heure
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster en spécifiant <code>%{format}t</code> dans la chaîne de format du
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journal, où <code>format</code> est une chaîne de format
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de la forme de celle de la fonction <code>strftime(3)</code>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de la bibliothèque C standard, ou choisie parmi les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster formats spéciaux supportés. Pour plus de détails,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster reportez-vous aux. <a
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster href="mod/mod_log_config.html#formats">chaînes de format</a>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>La ligne de la requête du client est placée entre guillemets.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Elle contient de nombreuses informations utiles. Tout d'abord, la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster méthode utilisée par le client est <code>GET</code>. Ensuite, le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster client a demandé la ressource <code>/apache_pb.gif</code>, et enfin,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster le client a utilisé le protocole <code>HTTP/1.0</code>. Il est aussi
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster possible d'enregistrer séparément une ou plusieurs parties de la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster requête. Par exemple, la chaîne de format "<code>%m %U %q %H</code>"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster va enregistrer la méthode, le chemin, la chaîne de la requête et le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster protocole, ce qui donnera le même résultat que
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dt><code>200</code> (<code>%>s</code>)</dt>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>C'est le code de statut que le serveur retourne au client. Cette
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster information est très importante car elle indique si la requête a fait
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'objet d'une réponse positive (codes commençant par 2), une
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster redirection (codes commençant par 3), une erreur due au client (codes
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster commençant par 4), ou une erreur due au serveur (codes commençant
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster par 5). Vous trouverez la liste complète des codes de statut possibles
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster dans la <a href="http://www.w3.org/Protocols/rfc2616/
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster rfc2616.txt">specification HTTP</a> (RFC2616 section 10).</dd>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>La dernière partie indique la taille de l'objet retourné au client,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster en-têtes non compris. Si aucun contenu n'a été retourné au client, cette
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster partie contiendra "<code>-</code>". Pour indiquer l'absence de contenu
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster par "<code>0</code>", utilisez <code>%B</code> au lieu de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <title>Combined Log Format (Format de journalisation combiné)</title>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Une autre chaîne de format couramment utilisée est le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "Combined Log Format" (Format de journalisation combiné). Il s'utilise
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster comme suit :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster \"%{User-agent}i\"" combined<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Ce format est identique au Common Log Format, avec deux champs
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster supplémentaires. Chacun de ces deux champs utilise la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster commençant par le caractère "%" <code>%{<em>header</em>}i</code>,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster où <em>header</em> peut être n'importe quel en-tête de requête HTTP.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Avec ce format, le journal des accès se présentera comme suit :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster 127.0.0.1 - frank [10/Oct/2000:13:55:36 -0700] "GET
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster "http://www.example.com/start.html" "Mozilla/4.08 [en]
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (Win98; I ;Nav)"
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Les champs supplémentaires sont :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dt><code>"http://www.example.com/start.html"</code>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>L'en-tête "Referer" (sic) de la requête HTTP. Il indique le site
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster depuis lequel le client prétend avoir lancé sa requête. (Ce doit être
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster la page qui contient un lien vers <code>/apache_pb.gif</code> ou
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster inclut ce dernier fichier).</dd>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dt><code>"Mozilla/4.08 [en] (Win98; I ;Nav)"</code>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <dd>L'en-tête User-Agent de la requête HTTP. C'est une information
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'identification que le navigateur du client envoie à propos
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de lui-même.</dd>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <title>Journaux d'accès multiples</title>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Plusieurs journaux d'accès peuvent être créés en spécifiant tout
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster simplement plusieurs directives
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive> dans le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fichier de configuration. Par exemple, les directives suivantes vont
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster créer trois journaux d'accès. Le premier contiendra les informations
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de base CLF, le second les informations du Referer, et le troisième
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster les informations sur le navigateur. Les deux dernières directives
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive> montrent
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster comment simuler les effets des directives <code>ReferLog</code> et
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%h %l %u %t \"%r\" %>s %b" common<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster CustomLog logs/referer_log "%{Referer}i -> %U"<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Cet exemple montre aussi qu'il n'est pas obligatoire d'associer
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster une chaîne de format à un alias au moyen de la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">LogFormat</directive>. Elle peut
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster être définie directement dans la ligne de la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive>.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Il est parfois souhaitable d'exclure certaines entrées des journaux
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'accès en fonction des caractéristiques de la requête du client. On
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster peut aisément accomplir ceci à l'aide des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <a href="env.html">variables d'environnement</a>. Tout d'abord, une
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster variable d'environnement doit être définie pour indiquer que la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster requête remplit certaines conditions. Pour ceci, on utilise en général
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster la directive <directive module="mod_setenvif">SetEnvIf</directive>,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster puis la clause <code>env=</code> de la directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <directive module="mod_log_config">CustomLog</directive> pour inclure
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster ou exclure les requêtes pour lesquelles
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster la variable d'environnement est définie.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Quelques exemples :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster # Marque les requêtes en provenance de l'interface loop-back<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SetEnvIf Remote_Addr "127\.0\.0\.1" dontlog<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster # Marque les requêtes pour le fichier robots.txt<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SetEnvIf Request_URI "^/robots\.txt$" dontlog<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster # Journalise toutes les autres requêtes<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Autre exemple, imaginons l'enregistrement des requêtes en provenance
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'utilisateurs de langue anglaise dans un journal, et celles des autres
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster utilisateurs dans un autre journal.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SetEnvIf Accept-Language "en" english<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster CustomLog logs/english_log common env=english<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster CustomLog logs/non_english_log common env=!english
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Dans le contexte d'une mise en cache, il peut être
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster intéressant de connaître l'efficacité du cache. Pour y parvenir,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster on pourrait utiliser cette méthode simple :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster SetEnv CACHE_MISS 1<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%h %l %u %t "%r " %>s %b %{CACHE_MISS}e" common-cache<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p><module>mod_cache</module> va s'exécuter avant
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <module>mod_env</module>, et si son action est couronnée de
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster succès, il délivrera le contenu sans faire appel à ce dernier. Si
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster l'URL se trouve dans le cache, la valeur journalisée sera alors
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <code>-</code>, tandis que dans le cas contraire elle sera
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>En plus de la syntaxe <code>env=</code>, la directive <directive
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster module="mod_log_config">LogFormat</directive> supporte les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster valeurs de journalisation conditionnelles basées sur le code de la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster réponse HTTP :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%400,501{User-agent}i" browserlog<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster LogFormat "%!200,304,302{Referer}i" refererlog
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Dans le premier exemple, le <code>User-agent</code> sera
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster enregistré si le code d'état HTTP est 400 ou 501. Dans le cas
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster contraire, c'est un caractère "-" qui sera enregistré à la place.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Dans le second exemple, le <code>Referer</code> sera enregistré si
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster le code d'état HTTP n'est <strong>pas</strong> 200, 204, ou 302
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster (remarquez le caractère "!" avant les codes d'état).</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Bien que nous venions de montrer que la journalisation conditionnelle
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster est souple et très puissante, cette méthode de contrôle du contenu des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journaux n'est pas la seule. Les fichiers journaux sont plus utiles
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster quand ils contiennent un enregistrement complet de l'activité du serveur,
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster et il est souvent plus aisé de simplement traiter à posteriori les fichiers
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journaux pour supprimer les requêtes que vous ne voulez pas y voir
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster apparaître.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Même dans le cas d'un serveur modérément sollicité, la quantité
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster d'informations stockées dans les fichiers journaux est très importante.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Le fichier journal des accès grossit en général d'1 Mo ou plus toutes
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster les 10000 requêtes. Il est par conséquent nécessaire d'effectuer
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster périodiquement la rotation des journaux en déplaçant ou supprimant les
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fichiers correspondants. On ne peut pas le faire pendant que le serveur
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster est en cours d'exécution, car Apache httpd va continuer à écrire dans l'ancien
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster fichier journal aussi longtemps qu'il le maintiendra ouvert.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster C'est pourquoi le serveur doit être
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <a href="stopping.html">redémarré</a> après le déplacement ou la
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster suppression des fichiers journaux de façon à ce qu'il en ouvre
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de nouveaux.</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster <p>Avec un redémarrage <em>graceful</em>, on peut faire en sorte que le
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster serveur ouvre de nouveaux fichiers journaux sans perdre de connexions
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster existantes ou en cours avec les clients. Cependant, pour que ceci soit
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster possible, le serveur doit continuer à écrire dans les anciens fichiers
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journaux pendant qu'il termine le traitement des requêtes en cours.
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster Il est donc nécessaire d'attendre un certain temps après le rédémarrage
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster avant d'effectuer tout traitement sur les fichiers journaux. Voici un
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster scénario typique dans lequel on effectue une simple rotation des
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster journaux en compressant les anciens fichiers correspondants afin
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster de gagner de l'espace disque :</p>
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster apachectl graceful<br />
a688bcbb4bcff5398fdd29b86f83450257dc0df4Allan Foster sleep 600<br />
programmes de journalisation dirigée s'exécutent généralement en tant que
le fichier spécifié. Tout hôte virtuel qui ne possède pas de directives de
href="vhosts/fd-limits.html">nombre de descripteurs