1
0
mirror of https://github.com/apache/httpd.git synced 2025-11-09 15:21:02 +03:00
Files
apache/docs/manual/mod/mod_xml2enc.html.fr
André Malo c0e273a35b update transformation
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1841200 13f79535-47bb-0310-9956-ffa450edef68
2018-09-18 09:03:58 +00:00

243 lines
17 KiB
Plaintext
Raw Blame History

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_xml2enc - Serveur HTTP Apache Version 2.5</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" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur HTTP Apache Version 2.5</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
<div id="page-content">
<div id="preamble"><h1>Module Apache mod_xml2enc</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_xml2enc.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_xml2enc.html" title="Fran<61>ais">&nbsp;fr&nbsp;</a></p>
</div>
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Support avanc<6E> de l'internationalisation et des jeux de
caract<EFBFBD>res pour les modules de filtrage bas<61>s sur libxml2</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<75>de<64>Module:</a></th><td>xml2enc_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">Fichier<65>Source:</a></th><td>mod_xml2enc.c</td></tr>
<tr><th><a href="module-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4 du serveur HTTP Apache.
Disponible en tant que module tiers dans les versions 2.2.x</td></tr></table>
<h3>Sommaire</h3>
<p>Ce module fournit un support avanc<6E> de l'internationalisation
pour les modules de filtrage supportant les balises (markup-aware)
comme <code class="module"><a href="../mod/mod_proxy_html.html">mod_proxy_html</a></code>. Il est capable de d<>tecter
automatiquement l'encodage des donn<6E>es en entr<74>e et de s'assurer
qu'elle sont trait<69>es correctement par l'interpr<70>teur <a href="http://xmlsoft.org/">libxml2</a>, y compris la conversion en
Unicode (UTF-8) si n<>cessaire. Il peut aussi convertir les donn<6E>es
dans l'encodage de votre choix apr<70>s le traitement des balises, et
s'assurera que le <var>jeu de caract<63>res</var> appropri<72> sera d<>fini
dans l'en-t<>te HTTP <var>Content-Type</var>.</p>
</div>
<div id="quickview"><h3>Sujets</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#usage">Utilisation</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#api">API de programmation</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#sniffing">D<>tection et encodage</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#output">Codage en sortie</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#alias">Codages non support<72>s</a></li>
</ul><h3 class="directives">Directives</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#xml2encalias">xml2EncAlias</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#xml2encdefault">xml2EncDefault</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#xml2startparse">xml2StartParse</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__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mod_xml2enc">Probl<62>mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_xml2enc">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
<ul class="seealso">
<li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="usage" id="usage">Utilisation</a><a title="Lien permanent" href="#usage" class="permalink">&para;</a></h2>
<p>Il existe deux sc<73>narios d'utilisation : le cas des modules
programm<6D>s pour travailler avec mod_xml2enc ; et les autres :</p>
<dl>
<dt>Modules de filtrages programm<6D>s pour mod_xml2enc</dt><dd>
<p>Les modules comme <code class="module"><a href="../mod/mod_proxy_html.html">mod_proxy_html</a></code> versions 3.1 et
sup<75>rieures utilisent la fonction optionnelle
<code>xml2enc_charset</code> pour d<>terminer la valeur de l'argument
"jeu de caract<63>res" <20> transmettre <20> l'interpr<70>teur libxml2, et
disposent de la fonction optionnelle <code>xml2enc_filter</code>
pour effectuer un encodage ult<6C>rieur <20>ventuel. L'utilisation de
mod_xml2enc avec un module pr<70>programm<6D> <20> cet effet ne n<>cessite
aucune configuration : ce dernier configurera mod_xml2enc pour vous
(sachant que vous pouvez tout de m<>me le personnaliser via les
directives de configuration ci-dessous).</p>
</dd>
<dt>Modules de filtrages non programm<6D>s pour mod_xml2enc</dt><dd>
<p>Pour utiliser mod_xml2enc avec un module bas<61> sur libxml2 qui n'a
pas <20>t<EFBFBD> explicitement programm<6D> pour mod_xml2enc, vous devrez
configurer la cha<68>ne de filtrage vous-m<>me. Ainsi, pour utiliser
mod_xml2enc avec un filtre <strong>foo</strong> fourni par un module
<strong>mod_foo</strong> et pour
am<61>liorer le support i18n de ce dernier avec HTML et XML, vous
pouvez utiliser les directives suivantes :</p>
<pre><code>
FilterProvider iconv xml2enc Content-Type $text/html
FilterProvider iconv xml2enc Content-Type $xml
FilterProvider markup foo Content-Type $text/html
FilterProvider markup foo Content-Type $xml
FilterChain iconv markup
</code></pre>
<p><strong>mod_foo</strong> supportera alors tout jeu de caract<63>re support<72> soit par
libxml2, soit par apr_xlate/iconv, soit par les deux.</p>
</dd></dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="api" id="api">API de programmation</a><a title="Lien permanent" href="#api" class="permalink">&para;</a></h2>
<p>Les programmeurs de modules de filtrage bas<61>s sur libxml2 sont
encourag<61>s <20> les pr<70>programmer pour mod_xml2enc, afin de fournir un
support i18n solide aux utilisateurs sans avoir <20> r<>inventer la
roue. L'API de programmation est d<>crite dans
<var>mod_xml2enc.h</var>, et <code class="module"><a href="../mod/mod_proxy_html.html">mod_proxy_html</a></code> est un
exemple de son utilisation.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="sniffing" id="sniffing">D<>tection et encodage</a><a title="Lien permanent" href="#sniffing" class="permalink">&para;</a></h2>
<p>A la diff<66>rence de <code class="module"><a href="../mod/mod_charset_lite.html">mod_charset_lite</a></code>, mod_xml2enc
est con<6F>u pour travailler avec des donn<6E>es dont l'encodage ne peut
pas <20>tre connu, et donc configur<75>, <20> l'avance. Il utilise donc les
techniques de 'reniflage' suivantes pour d<>tecter le type d'encodage
des donn<6E>es HTTP :</p>
<ol>
<li>Si l'en-t<>te HTTP <var>Content-Type</var> contient un
param<61>tre <var>charset</var>, c'est ce dernier qui sera utilis<69>.</li>
<li>Si les donn<6E>es commancent par une balise XML concernant
l'ordre des octets (BOM) ou par une d<>claration d'encodage XML,
c'est celle-ci qui sera utilis<69>e.</li>
<li>Si un type d'encodage est d<>clar<61> dans un <20>l<EFBFBD>ment HTML
<code>&lt;META&gt;</code>, c'est ce dernier qui sera utilis<69>.</li>
<li>Si aucun des <20>l<EFBFBD>ments pr<70>c<EFBFBD>dents n'est trouv<75>, c'est la
valeur par d<>faut d<>finie par la directive
<code class="directive">xml2EncDefault</code> qui sera utilis<69>e.</li>
</ol>
<p>Les conditions sont test<73>es dans cet ordre . D<>s qu'une r<>gle
s'applique, elle est utilis<69>e et la d<>tection est termin<69>e.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="output" id="output">Codage en sortie</a><a title="Lien permanent" href="#output" class="permalink">&para;</a></h2>
<p><a href="http://xmlsoft.org/">libxml2</a> utilise toujours UTF-8
(Unicode) en interne, et les modules de filtrage bas<61>s sur libxml2
utiliseront cet encodage en sortie par d<>faut. mod_xml2enc peut modifier
l'encodage en sortie via l'API, mais il n'y a actuellement aucun moyen de le
configurer directement.</p>
<p>La modification de l'encodage en sortie ne devrait (du moins en th<74>orie)
jamais <20>tre n<>cessaire, et est m<>me d<>conseill<6C>e <20> cause de la charge de
traitement suppl<70>mentaire impos<6F>e au serveur par une conversion non
n<EFBFBD>cessaire.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="alias" id="alias">Codages non support<72>s</a><a title="Lien permanent" href="#alias" class="permalink">&para;</a></h2>
<p>Si vous travaillez avec des encodages non support<72>s par aucune des
m<EFBFBD>thodes de conversion disponibles sur votre plateforme, vous pouvez
tout de m<>me leur associer un alias vers un code support<72> via la
directive <code class="directive">xml2EncAlias</code>.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="xml2encalias" id="xml2encalias">Directive</a> <a name="xml2EncAlias" id="xml2EncAlias">xml2EncAlias</a><a title="Lien permanent" href="#xml2encalias" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit des alias pour les valeurs d'encodage</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>xml2EncAlias <var>jeu-de-caract<63>res alias [alias ...]</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_xml2enc</td></tr>
</table>
<p>Cette directive de niveau serveur permet de d<>finir un ou
plusieurs alias pour un encodage. Elle permet au support d'encodage de
libxml2 de traiter en interne des encodages non reconnus par libxml2
en utilisant la table de conversion pour un encodage reconnu. Elle
permet d'atteindre deux objectifs : supporter des jeux (ou noms) de
caract<63>res non reconnus par libxml2 ou iconv, et <20>viter une
conversion pour un encodage lorsque cela n'est pas n<>cessaire.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="xml2encdefault" id="xml2encdefault">Directive</a> <a name="xml2EncDefault" id="xml2EncDefault">xml2EncDefault</a><a title="Lien permanent" href="#xml2encdefault" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit un encodage par d<>faut <20> utiliser lorsqu'aucune
information ne peut <20>tre <a href="#sniffing">automatiquement d<>tect<63>e</a></td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>xml2EncDefault <var>nom</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel, r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">Surcharges autoris<69>es:</a></th><td>All</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_xml2enc</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4.0 du serveur HTTP Apache
; disponible depuis un module tiers dans les versions ant<6E>rieures.</td></tr>
</table>
<p>Si vous traitez des donn<6E>es dont l'encodage est connu, mais ne
contenant aucune information <20> propos de ce dernier, vous pouvez
d<>finir une valeur par d<>faut afin d'aider mod_xml2enc <20> traiter
correctement les donn<6E>es. Par exemple, pour d<>finir la valeur par
d<>faut Latin1 (<var>iso-8859-1</var> specifi<66>e dans HTTP/1.0),
utilisez :</p>
<pre class="prettyprint lang-config">xml2EncDefault iso-8859-1</pre>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="xml2startparse" id="xml2startparse">Directive</a> <a name="xml2StartParse" id="xml2StartParse">xml2StartParse</a><a title="Lien permanent" href="#xml2startparse" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Indique <20> l'interpr<70>teur <20> partir de quelle balise il doit
commencer son traitement.</td></tr>
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>xml2StartParse <var><3E>l<EFBFBD>ment [<5B>l<EFBFBD>ment ...]</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration globale, serveur virtuel, r<>pertoire, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Override">Surcharges autoris<69>es:</a></th><td>All</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_xml2enc</td></tr>
</table>
<p>Cette directive permet de sp<73>cifier <20> partir de quelle balise,
parmi les <20>l<EFBFBD>ments sp<73>cifi<66>s, l'interpr<70>teur de balise doit
commencer son traitement. Ccei permet de contourner le probl<62>me des
serveurs d'arri<72>re-plan qui ins<6E>rent des <20>l<EFBFBD>ments non conformes en
d<>but de donn<6E>es, ce qui a pour effet de perturber l'interpr<70>teur (<a href="http://bahumbug.wordpress.com/2006/10/12/mod_proxy_html-revisited/">voir un exemple ici</a>).</p>
<p>Elle ne doit <20>tre utilis<69>e ni pour les documents XML, ni pour les
documents HTML correctement format<61>s.</p>
</div>
</div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_xml2enc.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_xml2enc.html" title="Fran<61>ais">&nbsp;fr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_xml2enc.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autoris<69> sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>