<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
-<!-- English Revision: 1189549:1334033 (outdated) -->
+<!-- English Revision : 1234033 -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<module>mod_substitute</module>
<module>mod_xml2enc</module>
<module>mod_proxy_html</module>
+ <module>mod_policy</module>
</modulelist>
<directivelist>
<directive module="mod_filter">FilterChain</directive>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1331425:1333989 (outdated) -->
+<!-- English Revision : 1333989 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviwed by : Vincent Deffontaines -->
Require ip 192.168.205
Require host phishers.example.com moreidiots.example
Require host ke
- </RequireNone>
+ </RequireNone>
</RequireAll>
</highlight>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1330277:1337882 (outdated) -->
+<!-- English Revision : 1337882 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<example><title>Section de votre fichier
<code>httpd.conf</code></title>
<highlight language="config">
-<Directory /www/htdocs/example><br />
- AddType text/example .exm<br />
+<Directory /www/htdocs/example>
+ AddType text/example .exm
</Directory>
</highlight>
</example>
<highlight language="config">
<Directory /www/htdocs>
- Allowoverride All
+ AllowOverride All
</Directory>
<Location />
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1330277:1333989 (outdated) -->
+<!-- English Revision : 1333989 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1331486:1333989 (outdated) -->
+<!-- English Revision : 1333989 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml-stylesheet type="text/xsl" href="./style/manual.fr.xsl"?>
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
-<!-- English Revision: 1296736:1334033 (outdated) -->
+<!-- English Revision : 1334033 -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
<dt>APR et APR-Util</dt>
<dd>APR et APR-Util doivent être déjà installés sur votre système.
Si ce n'est pas le cas, ou si vous préférez ne pas utiliser les
- versions fournies avec le système, téléchargez les dernières
+ versions fournies par le système, téléchargez les dernières
versions d'APR et APR-Util depuis <a
href="http://apr.apache.org/">Apache APR</a>, décompressez-les
- dans <code>./srclib/apr</code> et <code>./srclib/apr-util</code>
- (assurez-vous que les noms de répertoires ne comportent pas de
- numéro de version ; par exemple, la distribution APR doit se
- trouver dans ./srclib/apr/), et utilisez l'option
- <code>--with-included-apr</code> du script
+ respectivement dans <code>./srclib/apr</code> et
+ <code>./srclib/apr-util</code> (les noms des répertoires ne
+ doivent pas comporter de numéros de versions ; par exemple, la
+ distribution d'APR doit se trouver dans ./srclib/apr/), et
+ utilisez l'option <code>--with-included-apr</code> du script
<code>./configure</code>. Sur certaines plateformes, vous devrez
peut-être installer les paquets <code>-dev</code> correspondants
- pour permettre la compilation de httpd avec la version
- installée de PCRE.</dd>
+ pour permettre la compilation de httpd avec les versions
+ installées d'APR et APR-Util.</dd>
<dt>Bibliothèque d'expressions rationnelles compatibles Perl
(PCRE)</dt>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1174747:1334008 (outdated) -->
+<!-- English Revision : 1334008 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<code>REDIRECT_HANDLER</code>.</p>
<example><title>Exemple : type MIME</title>
- # Requêtes concernant des fichiers possédant un type de contenu
- # MIME particulier :<br />
- Action image/gif /cgi-bin/images.cgi<br />
- <br />
+ <highlight language="config">
+# Requests for files of a particular MIME content type:
+Action image/gif /cgi-bin/images.cgi
+ </highlight>
</example>
<p>Dans cet exemple, les requêtes pour des fichiers possédant
le type de contenu MIME <code>image/gif</code> seront traitées par
le script CGI <code>/cgi-bin/images.cgi</code>.</p>
- <example><title>Example: extension de nom de fichier</title>
- # Fichiers dont le nom possède une extension particulière<br />
- AddHandler mon-type-de-fichier .xyz<br />
- Action mon-type-de-fichier /cgi-bin/program.cgi<br />
+ <example>
+ <title>Example: File extension</title>
+ <highlight language="config">
+# Files of a particular file extension
+AddHandler my-file-type .xyz
+Action my-file-type /cgi-bin/program.cgi
+ </highlight>
</example>
-
<p>Dans cet exemple, les requêtes pour des fichiers possédant
l'extension <code>.xyz</code> seront traitées par
le script CGI <code>/cgi-bin/programme.cgi</code>.</p>
directive <directive>Action</directive> pour des localisations
virtuelles.</p>
- <example><title>Exemple</title>
- <Location /news><br />
- <indent>
- SetHandler news-handler<br />
- Action news-handler /cgi-bin/news.cgi virtual<br />
- </indent>
- </Location>
- </example>
+ <highlight language="config">
+<Location /news>
+ SetHandler news-handler
+ Action news-handler /cgi-bin/news.cgi virtual
+</Location>
+ </highlight>
</usage>
<seealso><directive module="mod_mime">AddHandler</directive></seealso>
foo.html?hi). Dans le cas contraire, la requête sera traitée
normalement.</p>
- <example><title>Exemples</title>
- # Toutes les requêtes GET aboutissent ici<br />
- Script GET /cgi-bin/search<br />
- <br />
- # Un gestionnaire CGI pour la méthode PUT<br />
- Script PUT /~bob/put.cgi<br />
- </example>
+ <highlight language="config">
+# All GET requests go here
+Script GET /cgi-bin/search
+
+# A CGI PUT handler
+Script PUT /~bob/put.cgi
+ </highlight>
</usage>
</directivesynopsis>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1036315:1334008 (outdated) -->
+<!-- English Revision : 1334008 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<p>Dans le fichier de configuration, associez les fichiers asis au
gestionnaire <code>send-as-is</code> comme ceci :</p>
- <example>AddHandler send-as-is asis</example>
+ <highlight language="config">AddHandler send-as-is asis</highlight>
<p>Le contenu de tout fichier possédant l'extension
<code>.asis</code> sera envoyé par Apache httpd au client pratiquement tel
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1300936:1334008 (outdated) -->
+<!-- English Revision : 1334008 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
serveur.</p>
<example><title>Exemple</title>
- <Location /secure><br />
- <indent>
- AuthType basic<br />
- AuthName "private area"<br />
- AuthBasicProvider dbm<br />
- AuthDBMType SDBM<br />
- AuthDBMUserFile /www/etc/dbmpasswd<br />
- Require valid-user<br />
- </indent>
- </Location>
+ <highlight language="config">
+<Location /secure>
+ AuthType basic
+ AuthName "private area"
+ AuthBasicProvider dbm
+ AuthDBMType SDBM
+ AuthDBMUserFile /www/etc/dbmpasswd
+ Require valid-user
+</Location>
+ </highlight>
</example>
-
<p>Les fournisseurs sont sollicités dans l'ordre jusqu'à ce que l'un
d'entre eux trouve une correspondance pour le nom d'utilisateur de
la requête ; alors, ce dernier fournisseur sera le seul à vérifier
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1300936:1337105 (outdated) -->
+<!-- English Revision : 1337105 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
texte) à l'aide de l'outil <program>htdigest</program>.</p>
<example><title>Exemple :</title>
- <Location /private/><br />
- <indent>
- AuthType Digest<br />
- AuthName "private area"<br />
- AuthDigestDomain /private/ http://mirror.my.dom/private2/<br />
- <br />
- AuthDigestProvider file<br />
- AuthUserFile /web/auth/.digest_pw<br />
- Require valid-user<br />
- </indent>
- </Location>
+ <highlight language="config">
+<Location /private/>
+ AuthType Digest
+ AuthName "private area"
+ AuthDigestDomain /private/ http://mirror.my.dom/private2/
+
+ AuthDigestProvider file
+ AuthUserFile /web/auth/.digest_pw
+ Require valid-user
+</Location>
+ </highlight>
</example>
<note><title>Note</title>
<example><title>Utilisation de l'authentification à base de condensé
avec MSIE :</title>
- BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
+ <highlight language="config">
+ BrowserMatch "MSIE" AuthDigestEnableQueryStringHack=On
+ </highlight>
</example>
<p>Cette correction n'est pas nécessaire avec MSIE 7, bien que son
</usage>
</directivesynopsis>
-<directivesynopsis>
-<name>AuthDigestNonceFormat</name>
-<description>Détermine la manière dont le nombre à valeur unique du
-serveur (nonce) est généré</description>
-<syntax>AuthDigestNonceFormat <var>format</var></syntax>
-<contextlist><context>directory</context><context>.htaccess</context>
-</contextlist>
-<override>AuthConfig</override>
-
-<usage>
- <note>Non encore implémenté.</note>
- <!-- La directive AuthDigestNonceFormat permet de déterminer la
- manière dont le nombre à valeur unique du serveur (nonce) est
- généré. -->
-</usage>
-</directivesynopsis>
-
-<directivesynopsis>
-<name>AuthDigestNcCheck</name>
-<description>Active ou désactive la vérification du nombre d'envois du
-nombre à valeur unique (nonce) par le serveur</description>
-<syntax>AuthDigestNcCheck On|Off</syntax>
-<default>AuthDigestNcCheck Off</default>
-<contextlist><context>server config</context></contextlist>
-
-<usage>
- <note>
- Non encore implémenté.
- </note>
- <!--
- <p>La directive AuthDigestNcCheck permet d'activer ou de désactiver
- la vérification du nombre d'envois du nombre à valeur unique (nonce)
- par le serveur.</p>
-
- <p>Bien que la définition de cette directive à On soit recommandée
- du point de vue de la sécurité, elle a des conséquences importantes sur
- les performances du serveur. Pour vérifier le nombre d'envois du nonce,
- *toutes* les requêtes (du moins toutes celles qui possèdent un
- en-tête d'autorisation, qu'elles requièrent ou non une
- authentification à base de condensé) doivent être sérialisées au
- travers d'une section critique. Si le serveur traite un grand nombre
- de requêtes qui possèdent un en-tête d'autorisation, l'impact sur
- les performances pourra se montrer sensible.</p>
- -->
-</usage>
-</directivesynopsis>
-
<directivesynopsis>
<name>AuthDigestAlgorithm</name>
<description>Sélectionne l'algorithme utilisé pour calculer les
MégaOctets. Par exemple, les directives qui suivent sont toutes
équivalentes :</p>
- <example>
- AuthDigestShmemSize 1048576<br />
- AuthDigestShmemSize 1024K<br />
- AuthDigestShmemSize 1M
- </example>
+ <highlight language="config">
+AuthDigestShmemSize 1048576
+AuthDigestShmemSize 1024K
+AuthDigestShmemSize 1M
+ </highlight>
</usage>
</directivesynopsis>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1029833:1334011 (outdated) -->
+<!-- English Revision: 1334011 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<module>mod_cache_disk</module> pour que ce dernier puisse
fonctionner.</p>
</note>
+ <note><title>Note :</title>
<p>Lorsque la plate-forme la supporte, et si elle est activée via la
directive <directive module="core">EnableSendfile</directive>,
<module>mod_cache_disk</module> utilise la fonctionnalité sendfile
un contexte de répertoire ou de fichier .htaccess, car le module ne
dispose pas des définitions correspondantes lorsque la requête est
servie depuis le cache.</p>
+ </note>
</summary>
+<seealso><module>mod_cache</module></seealso>
+<seealso><module>mod_cache_socache</module></seealso>
+<seealso><a href="../caching.html">Guide de la mise en cache</a></seealso>
<directivesynopsis>
<name>CacheRoot</name>
définir la structure des sous-répertoires du répertoire racine
spécifié.</p>
- <example>
+ <highlight language="config">
CacheRoot c:/cacheroot
- </example>
+ </highlight>
</usage>
</directivesynopsis>
définir la taille minimale d'un document, en octets, pour que
celui-ci puisse faire l'objet d'un stockage dans le cache.</p>
- <example>
+ <highlight language="config">
CacheMinFileSize 64
- </example>
+ </highlight>
</usage>
</directivesynopsis>
définir la taille maximale d'un document, en octets, pour que
celui-ci puisse faire l'objet d'un stockage dans le cache.</p>
- <example>
+ <highlight language="config">
CacheMaxFileSize 64000
- </example>
+ </highlight>
</usage>
</directivesynopsis>
<directivesynopsis>
enregistrées dans le cache, et non lorsque les données sont servies à
partir du cache.</p>
- <example>
+ <highlight language="config">
CacheReadSize 102400
- </example>
+ </highlight>
</usage>
</directivesynopsis>
que le serveur n'effectue pas une mise en tampon excessive au cas
où les données arriveraient plus vite que prévu.</p>
- <example>
+ <highlight language="config">
CacheReadTime 1000
- </example>
+ </highlight>
</usage>
</directivesynopsis>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1300877:1334011 (outdated) -->
+<!-- English Revision : 1334011 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
impatients.</p>
<example><title>Ne comprime que certains types de documents</title>
+ <highlight language="config">
AddOutputFilterByType DEFLATE text/html text/plain text/xml
+ </highlight>
</example>
<p>La configuration suivante, tout en produisant un contenu encore
configuration.</p>
<example><title>Comprime tout, sauf les images</title>
- <Location /><br />
- <indent>
- # Insère le filtre<br />
- SetOutputFilter DEFLATE<br />
- <br />
- # Netscape 4.x a quelques problèmes ...<br />
- BrowserMatch ^Mozilla/4 gzip-only-text/html<br />
- <br />
- # Netscape 4.06-4.08 ont d'autres problèmes<br />
- BrowserMatch ^Mozilla/4\.0[678] no-gzip<br />
- <br />
- # MSIE se fait passer pour Netscape, mais ça marche<br />
- BrowserMatch \bMSIE !no-gzip !gzip-only-text/html<br />
- # Ne pas comprimer les images<br />
- SetEnvIfNoCase Request_URI \<br />
- <indent>
- \.(?:gif|jpe?g|png)$ no-gzip dont-vary<br />
- </indent>
- <br />
- # On s'assure que les mandataires ne servent pas le mauvais
- # contenu<br />
- Header append Vary User-Agent env=!dont-vary<br />
- </indent>
- </Location>
+ <highlight language="config">
+<Location />
+ # Insert filter
+ SetOutputFilter DEFLATE
+
+ # Netscape 4.x a quelques problèmes ...
+ BrowserMatch ^Mozilla/4 gzip-only-text/html
+
+ # Netscape 4.06-4.08 ont d'autres problèmes
+ BrowserMatch ^Mozilla/4\.0[678] no-gzip
+
+ # MSIE se fait passer pour Netscape, mais ça marche
+ BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
+ # Ne pas comprimer les images
+ SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
+
+ # On s'assure que les mandataires ne servent pas le mauvais
+ # contenu
+ Header append Vary User-Agent env=!dont-vary
+</Location>
+ </highlight>
</example>
</section>
directive suivante active la compression des documents dans le
conteneur où elle est placée :</p>
- <example>
+ <highlight language="config">
SetOutputFilter DEFLATE
- </example>
+ </highlight>
<p>Certains navigateurs populaires ne gèrent pas la compression de
tous les contenus, et pour résoudre ce problème, vous pouvez
où la compression n'est activée que pour les fichiers html de la
documentation d'Apache :</p>
- <example>
- <Directory "/racine-de-votre-serveur/manual"><br />
- <indent>
- AddOutputFilterByType DEFLATE text/html<br />
- </indent>
- </Directory>
- </example>
+ <highlight language="config">
+<Directory "/your-server-root/manual">
+ AddOutputFilterByType DEFLATE text/html
+</Directory>
+ </highlight>
<p>Pour les navigateurs qui ont des problèmes avec la compression
de tous les types de fichiers, vous pouvez utiliser la directive
href="#recommended">exemple de configuration</a> de la section
précédente :</p>
- <example>
- BrowserMatch ^Mozilla/4 gzip-only-text/html<br />
- BrowserMatch ^Mozilla/4\.0[678] no-gzip<br />
- BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
- </example>
+ <highlight language="config">
+BrowserMatch ^Mozilla/4 gzip-only-text/html
+BrowserMatch ^Mozilla/4\.0[678] no-gzip
+BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
+ </highlight>
<p>Tout d'abord, on recherche un en-tête <code>User-Agent</code>
qui signale un navigateur Netscape version 4.x. Ces versions ne
<directive module="mod_mime">AddOutputFilter</directive>, comme
dans l'exemple suivant :</p>
- <example>
- <Location /dav-area><br />
- <indent>
- ProxyPass http://example.com/<br />
- SetOutputFilter INFLATE<br />
- </indent>
- </Location>
- </example>
+ <highlight language="config">
+<Location /dav-area>
+ ProxyPass http://example.com/
+ SetOutputFilter INFLATE
+</Location>
+ </highlight>
<p>Dans cet exemple, les sorties comprimées par gzip en
provenance de example.com seront décomprimées afin de pouvoir
<directive module="mod_mime">AddInputFilter</directive>, comme
dans l'exemple suivant :</p>
- <example>
- <Location /dav-area><br />
- <indent>
- SetInputFilter DEFLATE<br />
- </indent>
- </Location>
- </example>
+ <highlight language="config">
+<Location /dav-area>
+ SetInputFilter DEFLATE
+</Location>
+ </highlight>
<p>Désormais, si une requête contient un en-tête
<code>Content-Encoding: gzip</code>, son corps sera
<code>DEFLATE</code> dépend du contenu de l'en-tête
<code>User-Agent</code>, vous devez spécifier :</p>
- <example>
+ <highlight language="config">
Header append Vary User-Agent
- </example>
+ </highlight>
<p>Si votre décision de comprimer le contenu dépend d'autres
informations que celles contenues dans les en-têtes de la requête
les mandataires compatibles de tout mettre en cache.</p>
<example><title>Exemple</title>
+ <highlight language="config">
Header set Vary *
+ </highlight>
</example>
</section>
href="../logs.html#accesslog">journal des accès</a>.</p>
<example><title>Exemple</title>
- DeflateFilterNote ratio<br />
- <br />
- LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' deflate<br />
+ <highlight language="config">
+ DeflateFilterNote ratio
+
+ LogFormat '"%r" %b (%{ratio}n) "%{User-agent}i"' deflate
CustomLog logs/deflate_log deflate
+ </highlight>
</example>
<p>Pour extraire des informations plus précises de vos journaux,
suivante :</p>
<example><title>Journalisation détaillée</title>
- DeflateFilterNote Input instream<br />
- DeflateFilterNote Output outstream<br />
- DeflateFilterNote Ratio ratio<br />
- <br />
- LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate<br />
- CustomLog logs/deflate_log deflate
+ <highlight language="config">
+DeflateFilterNote Input instream
+DeflateFilterNote Output outstream
+DeflateFilterNote Ratio ratio
+
+LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
+CustomLog logs/deflate_log deflate
+</highlight>
</example>
</usage>
<seealso><module>mod_log_config</module></seealso>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 654507:1334016 (outdated) -->
+<!-- English Revision : 1334016 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
ou de désactiver le serveur d'écho.</p>
<example><title>Exemple</title>
+ <highlight language="config">
ProtocolEcho On
+ </highlight>
</example>
</usage>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1174747:1334016 (outdated) -->
+<!-- English Revision : 1334016 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
shell qui a invoqué le processus <program>httpd</program>.</p>
<example><title>Exemple</title>
+ <highlight language="config">
PassEnv LD_LIBRARY_PATH
+ </highlight>
</example>
</usage>
</directivesynopsis>
transmise aux scripts CGI et aux pages SSI.</p>
<example><title>Exemple</title>
+ <highlight language="config">
SetEnv SPECIAL_PATH /foo/bin
+ </highlight>
</example>
<note><p>Les variables d'environnement internes définies par cette
directive le sont <em>après</em> l'exécution de la plupart des
qui sont transmises aux scripts CGI et aux pages SSI.</p>
<example><title>Exemple</title>
+ <highlight language="config">
UnsetEnv LD_LIBRARY_PATH
+ </highlight>
</example>
</usage>
</directivesynopsis>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1238738:1342159 (outdated) -->
+<!-- English Revision : 1342159 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<p>La directive de base pour le chargement du module est</p>
-<example>
+<highlight language="config">
LoadModule lua_module modules/mod_lua.so
-</example>
+</highlight>
<p>
<code>mod_lua</code> fournit un gestionnaire nommé
<code>lua-script</code> qui peut être utilisé avec une directive
<code>AddHandler</code> :</p>
-<example>
+<highlight language="config">
AddHandler lua-script .lua
-</example>
+</highlight>
<p>
Ceci aura pour effet de faire traiter les requêtes pour les fichiers
gestionnaire, plutôt que de simplement évaluer le corps d'un script dans
le style de CGI. Une fonction de gestionnaire se présente comme suit :</p>
-<example><title>example.lua</title><pre>
+
+<highlight language="lua">
+<strong>example.lua</strong>
-- exemple de gestionnaire
require "string"
if r.method == 'GET' then
for k, v in pairs( r:parseargs() ) do
- r:puts( string.format("%s: %s", k, v) )
+ r:puts( string.format("%s: %s\n", k, v) )
end
elseif r.method == 'POST' then
for k, v in pairs( r:parsebody() ) do
- r:puts( string.format("%s: %s", k, v) )
+ r:puts( string.format("%s: %s\n", k, v) )
end
else
r:puts("unknown HTTP method " .. r.method)
end
end
-</pre></example>
+</highlight>
<p>
Ce gestionnaire se contente d'afficher les arguments codés d'un uri ou
que vous pouvez écrire dans lua sous la forme <code>apache2.OK</code>,
<code>apache2.DONE</code>, ou <code>apache2.DECLINED</code>.</p>
-<example><title>translate_name.lua</title><pre>
+<highlight language="lua">
+<strong>translate_name.lua</strong>
-- exemple d'accroche qui réécrit un URI en chemin du système de
fichiers.
-- on ne gère pas cette URL et on donne sa chance à un autre module
return apache2.DECLINED
end
-</pre></example>
+</highlight>
-<example><title>translate_name2.lua</title><pre>
+<highlight language="lua">
+<strong>translate_name2.lua</strong>
--[[ exemple d'accroche qui réécrit un URI vers un autre URI. Il renvoie
un apache2.DECLINED pour permettre à un autre interpréteur d'URL de
travailler sur la substitution, y compris l'accroche translate_name
end
return apache2.DECLINED
end
-</pre></example>
+</highlight>
</section>
<section id="datastructures"><title>Structures de données</title>
<p>La structure request_rec possède (au minimum) les méthodes
suivantes :</p>
- <example>
+ <highlight language="lua">
r:addoutputfilter(name|function) -- ajoute un filtre en sortie
- </example>
+ </highlight>
- <example>
- r:parseargs() -- renvoie une table lua contenant les arguments
- de la chaîne de paramètres de la requête
- </example>
+ <highlight language="lua">
+ r:parseargs() -- returns a lua table containing the request's query string arguments
+ </highlight>
- <example>
- r:parsebody() -- interprète le corps de la requête en tant que
- méthode POST et renvoie une table lua
- </example>
+ <highlight language="lua">
+ r:parsebody() -- parse the request body as a POST and return a lua table
+ </highlight>
- <example>
+ <highlight language="lua">
r:puts("bonjour", " le monde", "!") -- affichage dans le corps de la réponse
- </example>
+ </highlight>
- <example>
+ <highlight language="lua">
r:write("une simple chaîne") -- affichage dans le
corps de la réponse
- </example>
+ </highlight>
</dd>
</dl>
<section id="logging"><title>Fonctions de journalisation</title>
-<example>
+<highlight language="lua">
-- exemples de messages de journalisation
r:trace1("Ceci est un message de journalisation de niveau
trace") -- les niveaux valides vont de trace1 à trace8 <br />
r:alert("Ceci est un message de journalisation de niveau alert")<br />
r:crit("Ceci est un message de journalisation de niveau crit")<br />
r:emerg("Ceci est un message de journalisation de niveau emerg")<br />
-</example>
+</highlight>
</section>
Prenez garde aux problèmes de sécurité en écrivant vos expressions
rationnelles.</p>
<example><title>Exemples :</title>
- LuaMapHandler /(\w+)/(/w+) /scripts/$1.lua handle_$2
+ <highlight language="config">
+ LuaMapHandler /(\w+)/(\w+) /scripts/$1.lua handle_$2
+ </highlight>
</example>
<p>Cette directive va faire correspondre des uri comme
/photos/show?id=9 au fichier /scripts/photos.lua, et invoquera la
fonction de gestionnaire handle_show au niveau de la vm lua
après chargement de ce fichier.</p>
-<example>
+<highlight language="config">
LuaMapHandler /bingo /scripts/wombat.lua
-</example>
+</highlight>
<p>Cette directive invoquera la fonction "handle" qui est la
valeur par défaut si aucun nom de fonction spécifique n'est
spécifié.</p>
que lua. Ceci modifie le package.path dans les vms lua.</p>
<example><title>Exemples :</title>
- LuaPackagePath /scripts/lib/?.lua<br />
- LuaPackagePath /scripts/lib/?/init.lua
+ <highlight language="config">
+LuaPackagePath /scripts/lib/?.lua
+LuaPackagePath /scripts/lib/?/init.lua
+ </highlight>
</example>
</usage>
</directivesynopsis>
en développement.</p>
<example><title>Exemples :</title>
- LuaCodeCache stat<br />
- LuaCodeCache forever<br />
- LuaCodeCache never<br />
+ <highlight language="config">
+LuaCodeCache stat
+LuaCodeCache forever
+LuaCodeCache never
+ </highlight>
</example>
</usage>
<p>Exemple :</p>
-<example><pre>
+<highlight language="config">
# httpd.conf
LuaHookTranslateName /scripts/conf/hooks.lua silly_mapper
+</highlight>
+<highlight language="lua">
-- /scripts/conf/hooks.lua --
require "apache2"
function silly_mapper(r)
return apache2.DECLINED
end
end
-</pre></example>
+</highlight>
<note><title>Contexte</title><p>Cette directive ne peut être
utilisée ni à l'intérieur d'une section <directive type="section"
implémenter une vérification arbitraire de l'authentification et de
l'autorisation. Voici un exemple très simple :
</p>
-<example><pre>
+<highlight language="lua">
require 'apache2'
-- fonction d'accroche authcheck fictive
end
return apache2.OK
end
-</pre></example>
+</highlight>
<note><title>Ordonnancement</title><p>Les arguments optionnels
"early" ou "late" permettent de contrôler le moment auquel ce script
s'exécute par rapport aux autres modules.</p></note>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1174747:1334018 (outdated) -->
+<!-- English Revision : 1334018 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<code>type-map</code> via une directive <directive
module="mod_mime">AddHandler</directive> :</p>
- <example>
+ <highlight language="config">
AddHandler type-map .var
- </example>
+ </highlight>
<p>A l'arrivée d'une requête pour la ressource
<code>document.html</code>, le fichier
première variante acceptable de langue <code>en</code> qui sera
servie.</p>
- <example>
- LanguagePriority en fr de<br />
- ForceLanguagePriority Prefer
- </example>
+ <highlight language="config">
+LanguagePriority en fr de
+ForceLanguagePriority Prefer
+ </highlight>
<p><code>ForceLanguagePriority Fallback</code> utilise la directive
<directive module="mod_negotiation">LanguagePriority</directive>
liste définie par la directive <directive module="mod_negotiation"
>LanguagePriority</directive> qui sera servie.</p>
- <example>
- LanguagePriority en fr de<br />
- ForceLanguagePriority Fallback
- </example>
+ <highlight language="config">
+LanguagePriority en fr de
+ForceLanguagePriority Fallback
+ </highlight>
<p>Les deux options, <code>Prefer</code> et <code>Fallback</code>,
peuvent être spécifiées, de façon à ce que la variante servie soit
<var>langages-MIME</var> dans un ordre de préférences
décroissantes.</p>
- <example><title>Exemple:</title>
+ <highlight language="config">
LanguagePriority en fr de
- </example>
+ </highlight>
<p>Dans le cas d'une requête pour <code>foo.html</code>, si
<code>foo.html.fr</code> et <code>foo.html.de</code> existent, et si
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1299329:1334024 (outdated) -->
+<!-- English Revision : 1334024 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
</p>
<p>Vous trouverez sur le <a
-href="https://blogs.oracle.com/basant/entry/using_mod_sed_to_filter">blog
-de l'auteur</a> un article en forme de tutoriel, ainsi que les raisons pour
+href="https://blogs.oracle.com/basant/entry/using_mod_sed_to_filter">blog de
+l'auteur</a> un article en forme de tutoriel, ainsi que les raisons pour
lesquelles ce filtre est plus puissant qu'une simple
recherche/remplacement de chaîne ou d'expression rationnelle.</p>
<section id="sampleconf"><title>Exemple de configuration</title>
<example><title>Ajout d'un filtre en sortie</title>
- # Dans l'exemple suivant, le filtre sed va remplacer la chaîne
+ <highlight language="config">
+# Dans l'exemple suivant, le filtre sed va remplacer la chaîne
# "monday" par "MON" et la chaîne "sunday" par "SUN" dans les
- # documents html avant de les envoyer au client.<br />
- <indent>
- <Directory "/var/www/docs/sed"> <br />
- <indent>
- AddOutputFilter Sed html <br />
- OutputSed "s/monday/MON/g" <br />
- OutputSed "s/sunday/SUN/g" <br />
- </indent>
- </Directory> <br />
- </indent>
+ # documents html avant de les envoyer au client.
+<Directory "/var/www/docs/sed">
+ AddOutputFilter Sed html
+ OutputSed "s/monday/MON/g"
+ OutputSed "s/sunday/SUN/g"
+</Directory>
+ </highlight>
</example>
<example><title>Ajout d'un filtre en entrée</title>
+ <highlight language="config">
# Dans l'exemple suivant, le filtre sed va remplacer la chaîne
# "monday" par "MON" et la chaîne "sunday" par "SUN" dans les
- # données POST envoyées à PHP.<br />
- <indent>
- <Directory "/var/www/docs/sed"> <br />
- <indent>
- AddInputFilter Sed php <br />
- InputSed "s/monday/MON/g" <br />
- InputSed "s/sunday/SUN/g" <br />
- </indent>
- </Directory> <br />
- </indent>
+ # données POST envoyées à PHP.
+ <Directory "/var/www/docs/sed">
+ AddInputFilter Sed php
+ InputSed "s/monday/MON/g"
+ InputSed "s/sunday/SUN/g"
+</Directory>
+ </highlight>
</example>
</section>
<section id="sed_commands"><title>Commandes sed</title>
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1180828:1334024 (outdated) -->
+<!-- English Revision : 1334024 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
exemple qui définit netscape si le navigateur est Mozilla et non
MSIE.</p>
-<example>
- BrowserMatch ^Mozilla netscape<br />
- BrowserMatch MSIE !netscape<br />
-</example>
+<highlight language="config">
+BrowserMatch ^Mozilla netscape
+BrowserMatch MSIE !netscape
+</highlight>
</summary>
<seealso><a href="../env.html">Les variables d'environnement et le
d'environnement en fonction du contenu de l'en-tête de requête HTTP
<code>User-Agent</code>. Les deux lignes suivantes produisent le même
effet :</p>
-<example>
- BrowserMatchNoCase Robot est_un_robot<br />
- SetEnvIfNoCase User-Agent Robot est_un_robot<br />
-</example>
+<highlight language="config">
+BrowserMatchNoCase Robot is_a_robot
+SetEnvIfNoCase User-Agent Robot is_a_robot
+</highlight>
<p>Quelques exemples supplémentaires :</p>
-<example>
- BrowserMatch ^Mozilla forms jpeg=yes browser=netscape<br />
- BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript<br />
- BrowserMatch MSIE !javascript<br />
-</example>
+<highlight language="config">
+BrowserMatch ^Mozilla forms jpeg=yes browser=netscape
+BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript
+BrowserMatch MSIE !javascript
+</highlight>
</usage>
</directivesynopsis>
identique sur le plan sémantique à la directive <directive
module="mod_setenvif">BrowserMatch</directive>. Elle permet
cependant une comparaison insensible à la casse. Par exemple :</p>
-<example>
- BrowserMatchNoCase mac platform=macintosh<br />
- BrowserMatchNoCase win platform=windows<br />
-</example>
+<highlight language="config">
+BrowserMatchNoCase mac platform=macintosh
+BrowserMatchNoCase win platform=windows
+</highlight>
<p>Les directives <directive>BrowserMatch</directive> et
<directive>BrowserMatchNoCase</directive> sont des cas particuliers
des directives <directive module="mod_setenvif">SetEnvIf</directive>
et <directive module="mod_setenvif">SetEnvIfNoCase</directive>.
Ainsi, les deux lignes suivantes produisent le même effet :</p>
-<example>
- BrowserMatchNoCase Robot est_un_robot<br />
- SetEnvIfNoCase User-Agent Robot est_un_robot<br />
-</example>
+<highlight language="config">
+BrowserMatchNoCase Robot is_a_robot
+SetEnvIfNoCase User-Agent Robot is_a_robot
+</highlight>
</usage>
</directivesynopsis>
sous-expressions entre parenthèses correspondantes de
<var>regex</var>.</p>
-<example>
-<title>Example:</title>
- SetEnvIf Request_URI "\.gif$" objet_est_une_image=gif<br />
- SetEnvIf Request_URI "\.jpg$" objet_est_une_image=jpg<br />
- SetEnvIf Request_URI "\.xbm$" objet_est_une_image=xbm<br />
- :<br />
- SetEnvIf Referer www\.mon-domaine\.example\.com référant_intra_site<br />
- :<br />
- SetEnvIf objet_est_une_image xbm XBIT_PROCESSING=1<br />
- :<br />
- SetEnvIf ^TS ^[a-z] HAVE_TS<br />
-</example>
+<highlight language="config">
+SetEnvIf Request_URI "\.gif$" object_is_image=gif
+SetEnvIf Request_URI "\.jpg$" object_is_image=jpg
+SetEnvIf Request_URI "\.xbm$" object_is_image=xbm
+
+SetEnvIf Referer www\.mydomain\.example\.com intra_site_referral
+
+SetEnvIf object_is_image xbm XBIT_PROCESSING=1
+
+SetEnvIf ^TS ^[a-z] HAVE_TS
+</highlight>
<p>Les trois premières lignes définissent la variable
d'environnement <code>objet_est_une_image</code> si l'objet de la
d'environnement <em>env-variable</em> de la même manière que la
directive <directive>SetEnvIf</directive>.</p>
-<example>
+<highlight language="config">
SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
-</example>
+</highlight>
<p>Dans cet exemple, la variable d'environnement
<code>iso_delivered</code> est définie chaque fois que notre
l'adresse IP distante est une adresse privée au sens de la RFC 1918
:</p>
-<example>
+<highlight language="config">
SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
-</example>
+</highlight>
</usage>
<seealso><a href="../expr.html">Les expressions dans le serveur HTTP
module="mod_setenvif">SetEnvIf</directive>, et ne s'en distingue que
par le fait que la comparaison des expressions rationnelles est
effectuée sans tenir compte de la casse. Par exemple :</p>
-<example>
+<highlight language="config">
SetEnvIfNoCase Host Example\.Org site=apache
-</example>
+</highlight>
<p>Cette ligne va définir la variable d'environnement
<code>site</code> avec la valeur "<code>example</code>" si le champ
<?xml version="1.0"?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1174747:1334024 (outdated) -->
+<!-- English Revision : 1334024 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<p>Par exemple:</p>
- <example>LoadFile libexec/libxmlparse.so</example>
+ <highlight language="config">LoadFile libexec/libxmlparse.so</highlight>
</usage>
</directivesynopsis>
href="module-dict.html#ModuleIdentifier">Identificateur de
module</a> dans la documentation des modules. Exemple :</p>
- <example>
+ <highlight language="config">
LoadModule status_module modules/mod_status.so
- </example>
+ </highlight>
<p>charge le module spécifié depuis le sous-répertoire des modules
situé à la racine du serveur.</p>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1328159:1333999 (outdated) -->
+<!-- English Revision : 1333999 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.fr.xsl"?>
-<!-- English Revision: 1328589:1333999 (outdated) -->
+<!-- English revision : 1333999 -->
<!-- French translation : Lucien GENTIS -->
<!-- Reviewed by : Vincent Deffontaines -->