Linux cesa-www-main 6.1.0-49-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.174-1 (2026-05-26) x86_64
Apache/2.4.68 (Debian)
Server IP : 10.218.0.2 & Your IP : 216.73.216.28
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
doc /
apache2-doc /
manual /
fr /
mod /
Delete
Unzip
Name
Size
Permission
Date
Action
core.html
361.82
KB
-rw-r--r--
2026-06-12 05:08
directive-dict.html
20.54
KB
-rw-r--r--
2026-06-12 05:08
directives.html
58.25
KB
-rw-r--r--
2026-06-12 05:08
event.html
33.28
KB
-rw-r--r--
2026-06-12 05:08
index.html
27.9
KB
-rw-r--r--
2026-06-12 05:08
mod_access_compat.html
33.23
KB
-rw-r--r--
2026-06-12 05:08
mod_actions.html
13.74
KB
-rw-r--r--
2026-06-12 05:08
mod_alias.html
46.22
KB
-rw-r--r--
2026-06-12 05:08
mod_allowmethods.html
8.33
KB
-rw-r--r--
2026-06-12 05:08
mod_asis.html
9.15
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_basic.html
22.6
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_digest.html
23.05
KB
-rw-r--r--
2026-06-12 05:08
mod_auth_form.html
57.7
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_anon.html
18.52
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_core.html
18.41
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_dbd.html
16.96
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_dbm.html
13.86
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_file.html
12.25
KB
-rw-r--r--
2026-06-12 05:08
mod_authn_socache.html
21.67
KB
-rw-r--r--
2026-06-12 05:08
mod_authnz_fcgi.html
30.74
KB
-rw-r--r--
2026-06-12 05:08
mod_authnz_ldap.html
93.48
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_core.html
45.36
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_dbd.html
21.01
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_dbm.html
14.15
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_groupfile.html
11.11
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_host.html
14.94
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_owner.html
12.07
KB
-rw-r--r--
2026-06-12 05:08
mod_authz_user.html
8.39
KB
-rw-r--r--
2026-06-12 05:08
mod_autoindex.html
74.86
KB
-rw-r--r--
2026-06-12 05:08
mod_brotli.html
23.66
KB
-rw-r--r--
2026-06-12 05:08
mod_buffer.html
9.69
KB
-rw-r--r--
2026-06-12 05:08
mod_cache.html
81.11
KB
-rw-r--r--
2026-06-12 05:08
mod_cache_disk.html
22.08
KB
-rw-r--r--
2026-06-12 05:08
mod_cache_socache.html
19.8
KB
-rw-r--r--
2026-06-12 05:08
mod_cern_meta.html
11.81
KB
-rw-r--r--
2026-06-12 05:08
mod_cgi.html
22.69
KB
-rw-r--r--
2026-06-12 05:08
mod_cgid.html
12.45
KB
-rw-r--r--
2026-06-12 05:08
mod_charset_lite.html
17.03
KB
-rw-r--r--
2026-06-12 05:08
mod_data.html
7.69
KB
-rw-r--r--
2026-06-12 05:08
mod_dav.html
22.71
KB
-rw-r--r--
2026-06-12 05:08
mod_dav_fs.html
11.52
KB
-rw-r--r--
2026-06-12 05:08
mod_dav_lock.html
10.38
KB
-rw-r--r--
2026-06-12 05:08
mod_dbd.html
28.99
KB
-rw-r--r--
2026-06-12 05:08
mod_deflate.html
34.78
KB
-rw-r--r--
2026-06-12 05:08
mod_dialup.html
7.68
KB
-rw-r--r--
2026-06-12 05:08
mod_dir.html
27.64
KB
-rw-r--r--
2026-06-12 05:08
mod_dumpio.html
10.02
KB
-rw-r--r--
2026-06-12 05:08
mod_echo.html
7.36
KB
-rw-r--r--
2026-06-12 05:08
mod_env.html
12.18
KB
-rw-r--r--
2026-06-12 05:08
mod_example_hooks.html
12.06
KB
-rw-r--r--
2026-06-12 05:08
mod_expires.html
19.61
KB
-rw-r--r--
2026-06-12 05:08
mod_ext_filter.html
20.54
KB
-rw-r--r--
2026-06-12 05:08
mod_file_cache.html
18.33
KB
-rw-r--r--
2026-06-12 05:08
mod_filter.html
39.51
KB
-rw-r--r--
2026-06-12 05:08
mod_headers.html
41.18
KB
-rw-r--r--
2026-06-12 05:08
mod_heartbeat.html
9.75
KB
-rw-r--r--
2026-06-12 05:08
mod_heartmonitor.html
12.95
KB
-rw-r--r--
2026-06-12 05:08
mod_http2.html
85.5
KB
-rw-r--r--
2026-06-12 05:08
mod_ident.html
10.57
KB
-rw-r--r--
2026-06-12 05:08
mod_imagemap.html
24.56
KB
-rw-r--r--
2026-06-12 05:08
mod_include.html
70.75
KB
-rw-r--r--
2026-06-12 05:08
mod_info.html
16.11
KB
-rw-r--r--
2026-06-12 05:08
mod_isapi.html
26.77
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_bybusyness.html
8.23
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_byrequests.html
13.18
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_bytraffic.html
8.59
KB
-rw-r--r--
2026-06-12 05:08
mod_lbmethod_heartbeat.html
8.57
KB
-rw-r--r--
2026-06-12 05:08
mod_ldap.html
59.24
KB
-rw-r--r--
2026-06-12 05:08
mod_log_config.html
44.14
KB
-rw-r--r--
2026-06-12 05:08
mod_log_debug.html
10.92
KB
-rw-r--r--
2026-06-12 05:08
mod_log_forensic.html
15.15
KB
-rw-r--r--
2026-06-12 05:08
mod_logio.html
11.47
KB
-rw-r--r--
2026-06-12 05:08
mod_lua.html
108.75
KB
-rw-r--r--
2026-06-12 05:08
mod_macro.html
16.92
KB
-rw-r--r--
2026-06-12 05:08
mod_md.html
126.42
KB
-rw-r--r--
2026-06-12 05:08
mod_mime.html
76.65
KB
-rw-r--r--
2026-06-12 05:08
mod_mime_magic.html
18.15
KB
-rw-r--r--
2026-06-12 05:08
mod_negotiation.html
24.81
KB
-rw-r--r--
2026-06-12 05:08
mod_nw_ssl.html
9.76
KB
-rw-r--r--
2026-06-12 05:08
mod_privileges.html
35.27
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy.html
165.75
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_ajp.html
38.28
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_balancer.html
27.32
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_connect.html
10.61
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_express.html
14.2
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_fcgi.html
25.72
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_fdpass.html
7.59
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_ftp.html
22.19
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_hcheck.html
19.76
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_html.html
41.71
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_http.html
13.07
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_http2.html
10.95
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_scgi.html
16.14
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_uwsgi.html
8.6
KB
-rw-r--r--
2026-06-12 05:08
mod_proxy_wstunnel.html
11.64
KB
-rw-r--r--
2026-06-12 05:08
mod_ratelimit.html
7.25
KB
-rw-r--r--
2026-06-12 05:08
mod_reflector.html
8.9
KB
-rw-r--r--
2026-06-12 05:08
mod_remoteip.html
30.44
KB
-rw-r--r--
2026-06-12 05:08
mod_reqtimeout.html
14.19
KB
-rw-r--r--
2026-06-12 05:08
mod_request.html
10.05
KB
-rw-r--r--
2026-06-12 05:08
mod_rewrite.html
94.55
KB
-rw-r--r--
2026-06-12 05:08
mod_sed.html
12.56
KB
-rw-r--r--
2026-06-12 05:08
mod_session.html
40.92
KB
-rw-r--r--
2026-06-12 05:08
mod_session_cookie.html
14.85
KB
-rw-r--r--
2026-06-12 05:08
mod_session_crypto.html
20.25
KB
-rw-r--r--
2026-06-12 05:08
mod_session_dbd.html
28.44
KB
-rw-r--r--
2026-06-12 05:08
mod_setenvif.html
24.75
KB
-rw-r--r--
2026-06-12 05:08
mod_slotmem_plain.html
8.32
KB
-rw-r--r--
2026-06-12 05:08
mod_slotmem_shm.html
9.1
KB
-rw-r--r--
2026-06-12 05:08
mod_so.html
15.7
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_dbm.html
6.02
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_dc.html
6.08
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_memcache.html
9.14
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_redis.html
11.06
KB
-rw-r--r--
2026-06-12 05:08
mod_socache_shmcb.html
6.13
KB
-rw-r--r--
2026-06-12 05:08
mod_speling.html
13.88
KB
-rw-r--r--
2026-06-12 05:08
mod_ssl.html
236.75
KB
-rw-r--r--
2026-06-12 05:08
mod_status.html
13.34
KB
-rw-r--r--
2026-06-12 05:08
mod_substitute.html
16.08
KB
-rw-r--r--
2026-06-12 05:08
mod_suexec.html
8.28
KB
-rw-r--r--
2026-06-12 05:08
mod_systemd.html
8.02
KB
-rw-r--r--
2026-06-12 05:08
mod_unique_id.html
18.88
KB
-rw-r--r--
2026-06-12 05:08
mod_unixd.html
15.37
KB
-rw-r--r--
2026-06-12 05:08
mod_userdir.html
14.15
KB
-rw-r--r--
2026-06-12 05:08
mod_usertrack.html
21.62
KB
-rw-r--r--
2026-06-12 05:08
mod_version.html
11.08
KB
-rw-r--r--
2026-06-12 05:08
mod_vhost_alias.html
23.44
KB
-rw-r--r--
2026-06-12 05:08
mod_watchdog.html
8.17
KB
-rw-r--r--
2026-06-12 05:08
mod_xml2enc.html
17.69
KB
-rw-r--r--
2026-06-12 05:08
module-dict.html
9.7
KB
-rw-r--r--
2026-06-12 05:08
mpm_common.html
82.09
KB
-rw-r--r--
2026-06-12 05:08
mpm_netware.html
10.67
KB
-rw-r--r--
2026-06-12 05:08
mpm_winnt.html
11.52
KB
-rw-r--r--
2026-06-12 05:08
mpmt_os2.html
7.78
KB
-rw-r--r--
2026-06-12 05:08
overrides.html
77.74
KB
-rw-r--r--
2026-06-12 05:08
prefork.html
18.13
KB
-rw-r--r--
2026-06-12 05:08
quickreference.html
217.91
KB
-rw-r--r--
2026-06-12 05:08
worker.html
16.82
KB
-rw-r--r--
2026-06-12 05:08
Save
Rename
<!DOCTYPE html SYSTEM "about:legacy-compat"> <html lang="fr"><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta content="width=device-width, initial-scale=1" name="viewport"> <!-- XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX This file is generated from xml source: DO NOT EDIT XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX --> <title>mod_log_config - Serveur HTTP Apache Version 2.4</title> <link href="../../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet"> <link href="../../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size"> <link href="../../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../../style/css/prettify.css"> <script src="../../style/scripts/prettify.min.js"> </script> <link href="../../images/favicon.png" rel="shortcut icon"></head> <body> <div id="page-header"> <p class="menu"><a href="../mod/index.html">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p> <p class="apache">Serveur HTTP Apache Version 2.4</p> <img alt="" src="../../images/feather.png"></div> <div class="up"><a href="./index.html"><img title="<-" alt="<-" src="../../images/left.gif"></a></div> <div id="path"> <a href="https://www.apache.org/">Apache</a> > <a href="https://httpd.apache.org/">Serveur HTTP</a> > <a href="https://httpd.apache.org/docs/">Documentation</a> > <a href="../index.html">Version 2.4</a> > <a href="./index.html">Modules</a></div> <div id="page-content"> <div id="preamble"><h1>Module Apache mod_log_config</h1> <button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button> <div class="toplang"> <p><span>Langues Disponibles: </span><a href="../../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../../fr/mod/mod_log_config.html" title="Français"> fr </a> | <a href="../../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../../ko/mod/mod_log_config.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | <a href="../../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> </div> <div class="outofdate">Cette traduction peut être périmée. Vérifiez la version anglaise pour les changements récents.</div> <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Journalisation des requêtes envoyées au serveur</td></tr> <tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur de Module:</a></th><td>log_config_module</td></tr> <tr><th><a href="module-dict.html#SourceFile">Fichier Source:</a></th><td>mod_log_config.c</td></tr></table> <h3>Sommaire</h3> <p>Ce module apporte une grande souplesse dans la journalisation des requêtes des clients. Les journaux sont écrits sous un format personnalisable, et peuvent être enregistrés directement dans un fichier, ou redirigés vers un programme externe. La journalisation conditionnelle est supportée, si bien que des requêtes individuelles peuvent être incluses ou exclues des journaux en fonction de leur caractéristiques.</p> <p>Ce module fournit trois directives : <code class="directive"><a href="#transferlog">TransferLog</a></code> crée un fichier journal, <code class="directive"><a href="#logformat">LogFormat</a></code> définit un format personnalisé, et <code class="directive"><a href="#customlog">CustomLog</a></code> définit un fichier journal et un format en une seule étape. Pour journaliser les requêtes dans plusieurs fichiers, vous pouvez utiliser plusieurs fois les directives <code class="directive">TransferLog</code> et <code class="directive">CustomLog</code> dans chaque serveur.</p> </div> <div id="quickview"><h3>Sujets</h3> <ul id="topics"> <li><img alt="" src="../../images/down.gif"> <a href="#formats">Formats de journaux personnalisés</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#security">Considérations concernant la sécurité</a></li> </ul><h3 class="directives">Directives</h3> <ul id="toc"> <li><img alt="" src="../../images/down.gif"> <a href="#bufferedlogs">BufferedLogs</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#customlog">CustomLog</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#globallog">GlobalLog</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#logformat">LogFormat</a></li> <li><img alt="" src="../../images/down.gif"> <a href="#transferlog">TransferLog</a></li> </ul> <h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_log_config">Problèmes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_log_config">Signaler un bug</a></li></ul><h3>Voir aussi</h3> <ul class="seealso"> <li><a href="../logs.html">Les fichiers journaux d'Apache</a></li> </ul></div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="formats">Formats de journaux personnalisés <a title="Lien permanent" href="#formats" class="permalink">¶</a></h2> <p>L'argument format des directives <code class="directive"><a href="#logformat">LogFormat</a></code> et <code class="directive"><a href="#customlog">CustomLog</a></code> est une chaîne de caractères. Cette chaîne définit le format de la journalisation des requêtes dans le fichier journal. Elle peut contenir des caractères littéraux qui seront reproduits dans le fichier journal, et les caractères de contrôle de style C "\n" et "\t" représentant respectivement une nouvelle ligne et une tabulation. Les guillemets et les anti-slashes littéraux doivent être échappés à l'aide d'anti-slashes.</p> <p>Les caractéristiques de la requête en elle-même sont journalisées en insérant des directives "<code>%</code>" dans la chaîne de format, celles-ci étant remplacées dans le fichier journal par certaines valeurs comme suit :</p> <table class="bordered"><tr class="header"><th>Chaîne de format</th> <th>Description</th></tr> <tr><td><code>%%</code></td> <td>Le signe "pourcentage"</td></tr> <tr class="odd"><td><code>%a</code></td> <td>L'adresse IP distante (voir le module <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>).</td></tr> <tr><td><code>%{c}a</code></td> <td>Adresse IP distante de la connexion(voir le module <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>)</td></tr> <tr class="odd"><td><code>%A</code></td> <td>L'adresse IP locale</td></tr> <tr><td><code>%B</code></td> <td>La taille de la réponse en octets, en excluant les en-têtes HTTP.</td></tr> <tr class="odd"><td><code>%b</code></td> <td>La taille de la réponse en octets, en excluant les en-têtes HTTP. Au format CLF , c'est à dire un '<code>-</code>' à la place d'un 0 lorsqu'aucun octet n'est renvoyé.</td></tr> <tr><td><code>%{<var>NOMVAR</var>}C</code></td> <td>Le contenu du cookie <var>NOMVAR</var> dans la requête envoyée au serveur. Seuls les cookies version 0 sont pleinement supportés.</td></tr> <tr class="odd"><td><code>%D</code></td> <td>Le temps mis à servir la requête, en microsecondes.</td></tr> <tr><td><code>%{<var>NOMVAR</var>}e</code></td> <td>Le contenu de la variable d'environnement <var>NOMVAR</var></td></tr> <tr class="odd"><td><code>%f</code></td> <td>Nom de fichier</td></tr> <tr><td><code>%h</code></td> <td>Serveur distant. Contiendra l'adresse IP si la directive <code class="directive"><a href="../mod/core.html#hostnamelookups">HostnameLookups</a></code> est définie à <code>Off</code>, ce qui est sa valeur par défaut. Si cette adresse IP n'est enregistrée que pour certains serveurs, vous avez probablement défini des directives de contrôle d'accès qui mentionnent ces derniers par leurs noms. Voir la <a href="mod_authz_host.html#reqhost">documentation de Require host</a>.</td></tr> <tr class="odd"><td><code>%{c}h</code></td> <td>Semblable à <code>%h</code>, mais exploite toujours le nom d'hôte de la connection TCP sous-jacente, en ignorant toute modification réalisée sur le nom d'hôte distant par des modules tels que <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>.</td></tr> <tr><td><code>%H</code></td> <td>Le protocole de la requête</td></tr> <tr class="odd"><td><code>%{<var>NOMVAR</var>}i</code></td> <td>Le contenu des lignes d'en-tête <code><var>NOMVAR</var>:</code> dans la requête envoyée au serveur. Ces en-têtes sont ajoutés par d'autres modules (par exemple <code class="module"><a href="../mod/mod_headers.html">mod_headers</a></code>). Si vous êtes intéressé par ce qu'était l'en-tête de la requête avant d'être modifié par la plupart des modules, utilisez <code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> pour copier l'en-tête dans une variable d'environnement interne et journaliser sa valeur via le champ <code>%{<var>VARNAME</var>}e</code> décrit plus haut. </td></tr> <tr><td><code>%k</code></td> <td>Nombre de requêtes persistantes en cours pour cette connexion. Interessant si la directive <code class="directive"><a href="../mod/core.html#keepalive">KeepAlive</a></code> est utilisée ; par exemple, '1' signifie la première requête après la requête initiale, '2' la seconde, etc... ; autrement, il s'agit toujours de 0 (indiquant la requête initiale).</td></tr> <tr class="odd"><td><code>%l</code></td> <td>Le nom de connexion distant (en provenance d'identd, si disponible). Affiche un tiret, sauf si <code class="module"><a href="../mod/mod_ident.html">mod_ident</a></code> est présent et si <code class="directive"><a href="../mod/mod_ident.html#identitycheck">IdentityCheck</a></code> est à <code>On</code>.</td></tr> <tr><td><code>%L</code></td> <td>L'identifiant du message de journalisation de la requête dans le journal des erreurs (ou '-' si aucun message n'a été enregistré dans le journal des erreurs pour cette requête)</td></tr> <tr class="odd"><td><code>%m</code></td> <td>La méthode de la requête</td></tr> <tr><td><code>%{<var>NOMVAR</var>}n</code></td> <td>Le contenu de la note <var>NOMVAR</var> en provenance d'un autre module.</td></tr> <tr class="odd"><td><code>%{<var>NOMVAR</var>}o</code></td> <td>Le contenu de la ligne d'en-tête <code><var>NOMVAR</var>:</code> de la réponse.</td></tr> <tr><td><code>%p</code></td> <td>Le port canonique du serveur servant la requête</td></tr> <tr class="odd"><td><code>%{<var>format</var>}p</code></td> <td>Le port canonique du serveur servant la requête ou le véritable port du serveur ou le véritable port du client. les formats valides sont <code>canonical</code>, <code>local</code>, ou <code>remote</code>. </td></tr> <tr><td><code>%P</code></td> <td>Le numéro de processus du processus enfant qui a servi la requête.</td></tr> <tr class="odd"><td><code>%{<var>format</var>}P</code></td> <td>Le numéro de processus ou le numéro de thread du processus enfant qui a servi la requête. Les formats valides sont <code>pid</code>, <code>tid</code>, et <code>hextid</code>. </td></tr> <tr><td><code>%q</code></td> <td>La chaîne d'arguments (préfixée par un <code>?</code> si une chaîne d'arguments existe, sinon une chaîne vide)</td></tr> <tr class="odd"><td><code>%r</code></td> <td>La première ligne de la requête. Ne tient pas compte de la directive <code class="directive"><a href="../mod/core.html#mergeslashes">MergeSlashes</a></code> (autrement dit, pas de fusion, même si cette dernière est à ON).</td></tr> <tr><td><code>%R</code></td> <td>Le gestionnaire qui génère la réponse (s'il y en a un).</td></tr> <tr class="odd"><td><code>%s</code></td> <td>Statut. Pour les requêtes redirigées en interne, il s'agit du statut de la requête *originale* --- <code>%>s</code> pour la dernière.</td></tr> <tr><td><code>%t</code></td> <td>Date à laquelle la requête a été reçue (au format anglais standard)</td></tr> <tr class="odd"><td><code>%{<var>format</var>}t</code></td> <td>La date, sous la forme spécifiée par format, qui devrait être au format étendu <code>strftime(3)</code> (éventuellement localisé). Si le format commence par <code>begin:</code> (valeur par défaut), la date est extraite au début du traitement de la requête ; s'il commence par <code>end:</code>, la date correspond au moment où l'entrée du journal est inscrite, par conséquent vers la fin du traitement de la requête. Hormis les formats supportés par <code>strftime(3)</code>, les formats suivants sont aussi disponibles : <table> <tr><td><code>sec</code></td><td>nombre de secondes depuis Epoch</td></tr> <tr><td><code>msec</code></td><td>nombre de millisecondes depuis Epoch</td></tr> <tr><td><code>usec</code></td><td>nombre de microsecondes depuis Epoch</td></tr> <tr><td><code>msec_frac</code></td><td>fraction de milliseconde</td></tr> <tr><td><code>usec_frac</code></td><td>fraction de microseconde</td></tr> </table> Ces symboles ne peuvent pas être combinés entre eux ou avec un formatage <code>strftime(3)</code> dans la même chaîne de format. Par contre, vous pouvez utiliser plusieurs symboles <code>%{<var>format</var>}t</code>.</td></tr> <tr><td><code>%T</code></td> <td>Le temps mis pour servir la requête, en secondes.</td></tr> <tr class="odd"><td><code>%{<var>UNIT</var>}T</code></td> <td>Le temps mis pour traiter la requête dans une unité définie par <code>UNIT</code>. Les valeurs d'unité valides sont <code>ms</code> pour millisecondes, <code>us</code> pour microsecondes et <code>s</code> pour secondes. Si <code>UNIT</code> est omis, la valeur de l'unité par défaut est la seconde ; spécifier la valeur d'unité <code>us</code> revient à utiliser le format <code>%D</code>. La possibilité de spécifier une valeur d'unité avec le format <code>%T</code> est disponible depuis la version 2.4.13 du serveur HTTP Apache.</td></tr> <tr><td><code>%u</code></td> <td>L'utilisateur distant (en provenance d'auth ; peut être faux si le statut de retour (<code>%s</code>) est 401).</td></tr> <tr class="odd"><td><code>%U</code></td> <td>Le chemin de la requête, à l'exclusion de toute chaîne d'arguments. Tient compte de la directive <code class="directive"><a href="../mod/core.html#mergeslashes">MergeSlashes</a></code> (autrement dit, les barres obliques sont fusionnées si cette dernière est à ON).</td></tr> <tr><td><code>%v</code></td> <td>Le nom canonique du serveur qui a servi la requête, défini par la directive <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>.</td></tr> <tr class="odd"><td><code>%V</code></td> <td>La nom du serveur en tenant compte de la définition de la directive <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code>.</td></tr> <tr><td><code>%X</code></td> <td>Statut de la connexion lorsque la réponse a été renvoyée : <table> <tr><td><code>X</code> =</td> <td>connexion abandonnée avant l'envoi de la réponse.</td></tr> <tr><td><code>+</code> =</td> <td>la connexion peut rester ouverte après l'envoi de la réponse.</td></tr> <tr><td><code>-</code> = </td> <td>la connexion sera fermée après l'envoi de la réponse.</td></tr> </table> </td></tr> <tr class="odd"><td><code>%I</code></td> <td>Le nombre d'octets reçus, en comptant la requête et les en-têtes, ne peut être nul. Nécessite l'activation de <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>.</td></tr> <tr><td><code>%O</code></td> <td>Nombre d'octets envoyés, y compris les en-têtes. Peut être nul dans les rares cas où une requête est avortée avant que la réponse ne soit envoyée. Nécessite l'activation de <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>.</td></tr> <tr class="odd"><td><code>%S</code></td> <td>Nombre d'octets transmis (en émission et réception), y compris corps et en-têtes de requête. Ce nombre ne peut pas être nul, et il correspond à la combinaison des formats %I et %O. <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code> doit être chargé pour pouvoir utiliser ce format.</td></tr> <tr><td><code>%{<var>VARNAME</var>}^ti</code></td> <td>Le contenu de <code><var>VARNAME</var>:</code> dans les paramètres de la requête envoyée au serveur.</td></tr> <tr class="odd"><td><code>%{<var>VARNAME</var>}^to</code></td> <td>Le contenu de <code><var>VARNAME</var>:</code> dans les paramètres de la réponse envoyée par le serveur.</td></tr> </table> <h3 id="modifiers">Modificateurs</h3> <p>Il est possible de restreindre l'enregistrement de certains éléments en fonction du code de statut de la réponse, en insérant une liste de codes de statut séparés par des virgules immédiatement après le caractère "%". Par exemple, <code>"%400,501{User-agent}i"</code> n'enregistrera l'en-tête <code>User-agent</code> que dans le cas d'une erreur 400 ou 501. Avec les autres codes de statut, c'est la chaîne littérale <code>"-"</code> qui sera enregistrée. La liste de codes peut être précédée d'un "<code>!</code>" pour inverser la condition : <code>"%!200,304,302{Referer}i"</code> enregistre l'en-tête <code>Referer</code> pour toutes les requêtes qui <em>ne</em> renvoient <em>pas</em> un des trois codes spécifiés.</p> <p>Les modificateurs "<" et ">" peuvent être utilisés pour les requêtes qui ont été redirigées en interne afin de choisir si c'est respectivement la requête originale ou finale qui doit être consultée. Par défaut, les directives <code>%s, %U, %T, %D,</code> et <code>%r</code> consultent la requête originale, alors que toutes les autres consultent la requête finale. Ainsi, par exemple, on peut utiliser <code>%>s</code> pour enregistrer le statut final de la requête, et <code>%<u</code> pour enregistrer l'utilisateur authentifié à l'origine pour une requête redirigée en interne vers une ressource sans authentification.</p> <h3 id="format-notes">Quelques Notes</h3> <p>Pour des raisons de sécurité, à partir de la version 2.0.46, les caractères non imprimables et autres caractères spéciaux dans une chaîne de formatage qui peut contenir des données de chaîne arbitraires doivent être échappés à l'aide des séquences <code>\x<var>hh</var></code>, où <var>hh</var> est le code hexadécimal du caractère spécial. Comme exceptions à cette règle, les caractères <code>"</code> et <code>\</code> doivent être échappés par un anti-slash, et tous les "blancs" doivent être écrits selon leur notation de style C (<code>\n</code>, <code>\t</code>, etc...). Avant la version 2.0.46, aucun échappement n'était effectué sur ces chaînes, et il fallait être très prudent lors de l'exploitation des journaux bruts.</p> <table> <tr><th>Format</th><th>Description</th><th>Échappé</th></tr> <tr><td><code>%C</code></td><td>Valeur de Cookie</td><td>Oui</td></tr> <tr><td><code>%e</code></td><td>Variable d'environnement</td><td>Oui</td></tr> <tr><td><code>%f</code></td><td>Nom de fichier de la requête</td><td>Oui</td></tr> <tr><td><code>%h</code></td><td>Nom hôte distant</td><td>Oui</td></tr> <tr><td><code>%H</code></td><td>Protocole de la requête</td><td>Oui</td></tr> <tr><td><code>%i</code></td><td>En-tête de la requête</td><td>Oui</td></tr> <tr><td><code>%l</code></td><td>Nom de connexion distant</td><td>Oui</td></tr> <tr><td><code>%m</code></td><td>Méthode de la requête</td><td>Oui</td></tr> <tr><td><code>%n</code></td><td>Note</td><td>Oui</td></tr> <tr><td><code>%o</code></td><td>En-tête de la réponse</td><td>Oui</td></tr> <tr><td><code>%q</code></td><td>Chaîne de paramètres</td><td>Oui</td></tr> <tr><td><code>%r</code></td><td>Ligne de la requête</td><td>Oui</td></tr> <tr><td><code>%R</code></td><td>Gestionnaire</td><td>Oui</td></tr> <tr><td><code>%u</code></td><td>Utilisateur distant</td><td>Oui</td></tr> <tr><td><code>%U</code></td><td>URI de la requête</td><td>Oui</td></tr> <tr><td><code>%v</code></td><td>Nom d'hôte du serveur</td><td>Oui</td></tr> <tr><td><code>%V</code></td><td>Nom canonique du serveur</td><td>Oui</td></tr> <tr><td><code>%^ti</code></td><td>Données en fin de requête</td><td>Oui</td></tr> <tr><td><code>%^to</code></td><td>Données en fin de réponse</td><td>Oui</td></tr> <tr><td><code>%a</code></td><td>Adresse IP distante</td><td>Non (adresse IP)</td></tr> <tr><td><code>%A</code></td><td>Adresse IP locale</td><td>Non (adresse IP)</td></tr> <tr><td><code>%b</code>, <code>%B</code></td><td>Nombre d'octets envoyés</td><td>Non (numérique)</td></tr> <tr><td><code>%D</code></td><td>Durée de la requête (microsecondes)</td><td>Non (numérique)</td></tr> <tr><td><code>%k</code></td><td>Requêtes en cours</td><td>Non (numérique)</td></tr> <tr><td><code>%L</code></td><td>Identifiant de connexion</td><td>Non (généré en interne)</td></tr> <tr><td><code>%p</code></td><td>Port du serveur</td><td>Non (numérique)</td></tr> <tr><td><code>%P</code></td><td>PID/TID</td><td>Non (numérique)</td></tr> <tr><td><code>%s</code></td><td>Code d'état</td><td>Non (numérique)</td></tr> <tr><td><code>%t</code></td><td>Moment de la requête</td><td>Non (temps formaté)</td></tr> <tr><td><code>%T</code></td><td>Durée de la requête (secondes)</td><td>Non (numérique)</td></tr> <tr><td><code>%X</code></td><td>État de la connexion</td><td>Non (un seul caractère)</td></tr> </table> <p><code>%b</code> et <code>%B</code> ne représentent pas le nombre d'octets envoyés au client, mais simplement la taille en octets de la réponse HTTP (les deux étant différents, par exemple, si la connexion est abandonnée, ou si SSL est utilisé). Le format <code>%O</code> fourni par <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>, enregistrera le nombre réel d'octets envoyés sur le réseau.</p> <p>Note : <code class="module"><a href="../mod/mod_cache.html">mod_cache</a></code> est implémenté en tant que gestionnaire basique et non en tant que gestionnaire standard. C'est pourquoi la chaîne de format <code>%R</code> ne renverra pas d'information à propos du gestionnaire lorsqu'une mise en cache de contenu entre en jeu.</p> <h3 id="examples">Exemples</h3> <p>Quelques chaînes de format couramment utilisées :</p> <dl> <dt>Format de journal courant (CLF)</dt> <dd><code>"%h %l %u %t \"%r\" %>s %b"</code></dd> <dt>Format de journal courant avec un serveur virtuel</dt> <dd><code>"%v %h %l %u %t \"%r\" %>s %b"</code></dd> <dt>Format de journal NCSA étandu/combiné</dt> <dd><code>"%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\""</code></dd> <dt>Format de journal de la page qui contient le lien vers la page concernée (Referer)</dt> <dd><code>"%{Referer}i -> %U"</code></dd> <dt>Format de journal de l'agent (Navigateur)</dt> <dd><code>"%{User-agent}i"</code></dd> </dl> <p>Vous pouvez utiliser plusieurs fois la directive <code>%{format}t</code> pour construire un format de temps utilisant les symboles de format étendus tels que <code>msec_frac</code> :</p> <dl> <dt>Format de temps prenant en compte les milisecondes</dt> <dd><code>"%{%d/%b/%Y %T}t.%{msec_frac}t %{%z}t"</code></dd> </dl> </div><div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="section"> <h2 id="security">Considérations concernant la sécurité <a title="Lien permanent" href="#security" class="permalink">¶</a></h2> <p>Voir le document <a href="../misc/security_tips.html#serverroot">conseils à matière de sécurité</a> pour plus de détails sur les raisons pour lesquelles votre sécurité pourrait être compromise, si le répertoire où sont stockés les fichiers journaux sont inscriptibles par tout autre utilisateur que celui qui démarre le serveur.</p> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="bufferedlogs">Directive <span id="BufferedLogs">BufferedLogs</span> <a title="Lien permanent" href="#bufferedlogs" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Enregistre les entrées du journal dans un tampon en mémoire avant de les écrire sur disque</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>BufferedLogs On|Off</code></td></tr> <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>BufferedLogs Off</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr> </table> <p>Lorsque la directive <code class="directive">BufferedLogs</code> est à "on", <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code> stocke de nombreuses entrées du journal en mémoire, et les écrit d'un seul bloc sur disque, plutôt que de les écrire après chaque requête. Sur certains systèmes, ceci peut améliorer l'efficacité des accès disque, et par conséquent les performances. La directive ne peut être définie qu'une seule fois pour l'ensemble du serveur ; elle ne peut pas être définie au niveau d'un serveur virtuel.</p> <div class="note">Cette directive doit être utilisée avec précautions car un crash peut provoquer la perte de données de journalisation.</div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="customlog">Directive <span id="CustomLog">CustomLog</span> <a title="Lien permanent" href="#customlog" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le nom et le format du fichier journal</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>CustomLog <var>fichier</var>|<var>pipe</var> <var>format</var>|<var>alias</var> [env=[!]<var>variable-environnement</var>| expr=<var>expression</var>]</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr> </table> <p>La directive <code class="directive">CustomLog</code> permet de contrôler la journalisation des requêtes destinées au serveur. Un format de journal est spécifié, et la journalisation peut s'effectuer de manière conditionnelle en fonction des caractéristiques de la requête en utilisant des variables d'environnement.</p> <p>Le premier argument, qui spécifie l'emplacement où les journaux seront écrits, accepte deux types de valeurs :</p> <dl> <dt><var>fichier</var></dt> <dd>Un nom de fichier, relatif au répertoire défini par la directive <code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>.</dd> <dt><var>pipe</var></dt> <dd>Le caractère pipe "<code>|</code>", suivi du chemin vers un programme qui recevra les informations de la journalisation sur son entrée standard. Voir les notes à propos de la <a href="../logs.html#piped">journalisation redirigée</a> pour plus d'informations. <div class="warning"><h3>Sécurité :</h3> <p>Si les journaux sont redirigés vers un programme, ce dernier s'exécutera sous l'utilisateur qui a démarré <code class="program"><a href="../programs/httpd.html">httpd</a></code>. Ce sera l'utilisateur root si le serveur a été démarré par root ; vérifiez que le programme est sécurisé.</p> </div> <div class="warning"><h3>Note</h3> <p>Lors de la spécification d'un chemin de fichier sur les plate-formes non-Unix, il faut prendre soin de ne pas oublier que seuls les slashes directs doivent être utilisés, même si la plate-forme autorise l'emploi d'anti-slashes. D'une manière générale, c'est une bonne idée que de n'utiliser que des slashes directs dans les fichiers de configuration.</p> </div></dd> </dl> <p>Le second argument permet de définir ce qui va être écrit dans le fichier journal. Il peut contenir soit un <var>alias</var> prédéfini par une directive <code class="directive"><a href="#logformat">LogFormat</a></code>, soit une chaîne de <var>format</var> explicite comme décrit dans la section <a href="#formats">formats de journaux</a>.</p> <p>Par exemple, les deux blocs de directives suivants produisent le même effet :</p> <pre class="prettyprint lang-config"># Journal personnalisé avec alias de format LogFormat "%h %l %u %t \"%r\" %>s %b" common CustomLog "logs/access_log" common # Journal personnalisé avec chaîne de format explicite CustomLog "logs/access_log" "%h %l %u %t \"%r\" %>s %b"</pre> <p>Le troisième argument est optionnel et permet de contrôler si une requête doit être ou non journalisée. Dans le cas d'une clause '<code>env=!<var>nom</var></code>', la condition peut être la présence ou l'absence d'une variable particulière dans l'<a href="../env.html">environnement du serveur</a>. Dans le cas d'une clause 'expr=<var>expression</var>', la condition consiste en une <a href="../expr.html">expression</a> booléenne quelconque. Si la condition n'est pas vérifiée, la requête ne sera pas journalisée. D'éventuelles références à des en-têtes HTTP dans l'expression rationnelle n'entraîneront pas l'ajout des noms d'en-tête correspondants à l'en-tête Vary.</p> <p>Les variables d'environnement peuvent être définies au niveau de chaque requête en utilisant les modules <code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code> et/ou <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>. Par exemple, si vous voulez enregistrer les requêtes pour toutes les images GIF sur votre serveur dans un fichier journal séparé, et pas dans votre journal principal, vous pouvez utiliser :</p> <pre class="prettyprint lang-config">SetEnvIf Request_URI \.gif$ gif-image CustomLog "gif-requests.log" common env=gif-image CustomLog "nongif-requests.log" common env=!gif-image</pre> <p>Ou, pour reproduire le comportement de l'ancienne directive RefererIgnore, vous pouvez utiliser :</p> <pre class="prettyprint lang-config">SetEnvIf Referer example\.com localreferer CustomLog "referer.log" referer env=!localreferer</pre> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="globallog">Directive <span id="GlobalLog">GlobalLog</span> <a title="Lien permanent" href="#globallog" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Définit le nom et le format du fichier journal</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>GlobalLog<var>file</var>|<var>pipe</var> <var>format</var>|<var>nickname</var> [env=[!]<var>environment-variable</var>| expr=<var>expression</var>]</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr> <tr><th><a href="directive-dict.html#Compatibility">Compatibilité:</a></th><td>Disponible à partir de la version 2.4.19 du serveur HTTP Apache</td></tr> </table> <p>La directive <code class="directive">GlobalLog</code> permet de spécifier un journal partagé entre le serveur principal et tous les serveurs virtuels définis.</p> <p>Elle est identique à la directive <code class="directive">CustomLog</code> à ces différences près : </p> <ul> <li>Elle n'est pas valide dans un contexte de serveur virtuel.</li> <li>A la différence d'une directive <code class="directive">CustomLog</code> définie globalement, elle est prise en compte par les serveurs virtuels qui définissent leur propre directive <code class="directive">CustomLog</code>.</li> </ul> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="logformat">Directive <span id="LogFormat">LogFormat</span> <a title="Lien permanent" href="#logformat" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Décrit un format utilisable dans un fichier journal</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>LogFormat <var>format</var>|<var>alias</var> [<var>alias</var>]</code></td></tr> <tr><th><a href="directive-dict.html#Default">Défaut:</a></th><td><code>LogFormat "%h %l %u %t \"%r\" %>s %b"</code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr> </table> <p>Cette directive permet de spécifier le format du fichier journal des accès.</p> <p>La directive <code class="directive">LogFormat</code> se présente sous deux formes. Sous la première forme, qui ne possède qu'un seul argument, la directive définit le format qui sera utilisé dans les journaux spécifiés par les directives <code class="directive">TransferLog</code> ultérieures. L'argument unique peut contenir un <var>format</var> explicite comme décrit dans la section <a href="#formats">formats de journaux personnalisés</a> ci-dessus. Il peut aussi contenir un <var>alias</var> faisant référence à un format de journal prédéfini par une directive <code class="directive">LogFormat</code> comme décrit plus loin.</p> <p>Sous sa seconde forme, la directive <code class="directive">LogFormat</code> associe un <var>format</var> explicite à un <var>alias</var>. Cet <var>alias</var> peut ensuite s'utiliser dans les directives <code class="directive">LogFormat</code> ou <code class="directive"><a href="#customlog">CustomLog</a></code> ultérieures, ce qui évite d'avoir à répéter l'ensemble de la chaîne de format. Une directive <code class="directive">LogFormat</code> qui définit un alias <strong>ne fait rien d'autre</strong> -- c'est à dire qu'<em>elle ne fait que</em> définir l'alias, elle n'applique pas le format et n'en fait pas le format par défaut. Par conséquent, elle n'affecte pas les directives <code class="directive"><a href="#transferlog">TransferLog</a></code> ultérieures. En outre, la directive <code class="directive">LogFormat</code> ne peut pas utiliser un alias pour en définir un autre. Notez que l'alias ne doit pas contenir de caractère pourcent (<code>%</code>).</p> <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">LogFormat "%v %h %l %u %t \"%r\" %>s %b" serveur_virtuel_commun</pre> </div> </div> <div class="top"><a href="#page-header"><img alt="top" src="../../images/up.gif"></a></div> <div class="directive-section"><h2 id="transferlog">Directive <span id="TransferLog">TransferLog</span> <a title="Lien permanent" href="#transferlog" class="permalink">¶</a></h2> <table class="directive"> <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Spécifie l'emplacement d'un fichier journal</td></tr> <tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>TransferLog <var>fichier</var>|<var>pipe</var></code></td></tr> <tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel</td></tr> <tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Base</td></tr> <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_log_config</td></tr> </table> <p>Cette directive possède exactement les mêmes arguments et produit les mêmes effets que la directive <code class="directive"><a href="#customlog">CustomLog</a></code>, à l'exception qu'elle ne permet pas de spécifier un format de journal explicite ou la journalisation conditionnelle des requêtes. En l'occurrence, le format de journal est déterminé par la dernière définition d'une directive <code class="directive"><a href="#logformat">LogFormat</a></code> qui ne définit pas d'alias. Si aucun format particulier n'a été spécifié, c'est le Common Log Format qui sera utilisé.</p> <div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" TransferLog logs/access_log</pre> </div> </div> </div> <div class="bottomlang"> <p><span>Langues Disponibles: </span><a href="../../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English"> en </a> | <a href="../../fr/mod/mod_log_config.html" title="Français"> fr </a> | <a href="../../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> | <a href="../../ko/mod/mod_log_config.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> | <a href="../../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p> </div><div id="footer"> <p class="apache">Copyright 2026 The Apache Software Foundation.<br>Autorisé sous <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> <p class="menu"><a href="../mod/index.html">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Signaler un bug</a></p></div><script><!--//--><![CDATA[//><!-- if (typeof(prettyPrint) !== 'undefined') { prettyPrint(); } var langToggle = document.querySelector('.lang-toggle'); var topLang = document.querySelector('.toplang'); if (langToggle && topLang) { langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); }); } var qv = document.getElementById('quickview'); if (qv) { document.body.appendChild(qv); var qvBtn = document.createElement('button'); qvBtn.className = 'qv-toggle'; qvBtn.setAttribute('aria-label', 'Toggle page navigation'); qvBtn.innerHTML = '☰'; document.body.appendChild(qvBtn); qvBtn.addEventListener('click', function() { var isOpen = qv.classList.toggle('open'); if (isOpen) { qv.style.top = window.scrollY + 10 + 'px'; } }); window.addEventListener('scroll', function() { qv.classList.remove('open'); }); } //--><!]]></script> </body></html>