summaryrefslogtreecommitdiffstats
path: root/docs/manual/rewrite/tech.html.fr
diff options
context:
space:
mode:
authorLucien Gentis <lgentis@apache.org>2016-01-30 18:47:12 +0100
committerLucien Gentis <lgentis@apache.org>2016-01-30 18:47:12 +0100
commitad19dd982fd38dcfcac01a0d659971eeaccf4386 (patch)
tree4eb1dd32b2f6a8e10ae5dd80213de93a3e07292e /docs/manual/rewrite/tech.html.fr
parentRebuild. (diff)
downloadapache2-ad19dd982fd38dcfcac01a0d659971eeaccf4386.tar.xz
apache2-ad19dd982fd38dcfcac01a0d659971eeaccf4386.zip
2nd rebuild
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1727739 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/rewrite/tech.html.fr')
-rw-r--r--docs/manual/rewrite/tech.html.fr208
1 files changed, 104 insertions, 104 deletions
diff --git a/docs/manual/rewrite/tech.html.fr b/docs/manual/rewrite/tech.html.fr
index ead97dd676..d2e30b0951 100644
--- a/docs/manual/rewrite/tech.html.fr
+++ b/docs/manual/rewrite/tech.html.fr
@@ -1,13 +1,13 @@
-<?xml version="1.0" encoding="UTF-8"?>
+<?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=UTF-8" http-equiv="Content-Type" />
+<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>Détails techniques sur le module Apache mod_rewrite - Serveur Apache HTTP Version 2.5</title>
+<title>Détails techniques sur le module Apache mod_rewrite - Serveur Apache HTTP 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" />
@@ -21,97 +21,97 @@
<img alt="" src="../images/feather.gif" /></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="./">Rewrite</a></div><div id="page-content"><div id="preamble"><h1>Détails techniques sur le module Apache mod_rewrite</h1>
+<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="./">Rewrite</a></div><div id="page-content"><div id="preamble"><h1>Détails techniques sur le module Apache mod_rewrite</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/rewrite/tech.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
-<a href="../fr/rewrite/tech.html" title="Français">&nbsp;fr&nbsp;</a></p>
+<a href="../fr/rewrite/tech.html" title="Français">&nbsp;fr&nbsp;</a></p>
</div>
-<p>Ce document passe en revue certains détails techniques à propos du
+<p>Ce document passe en revue certains détails techniques à propos du
module mod_rewrite et de la mise en correspondance des URLs</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#InternalAPI">Phases de l'API</a></li>
-<li><img alt="" src="../images/down.gif" /> <a href="#InternalRuleset">Traitement du jeu de règles</a></li>
-</ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="../mod/mod_rewrite.html">Documentation du module mod_rewrite</a></li><li><a href="intro.html">Introduction à mod_rewrite</a></li><li><a href="remapping.html">Redirection et remise en
-correspondance</a></li><li><a href="access.html">Contrôle d'accès</a></li><li><a href="vhosts.html">Serveurs virtuels</a></li><li><a href="proxy.html">Mise en cache</a></li><li><a href="rewritemap.html">Utilisation de RewriteMap</a></li><li><a href="advanced.html">Techniques avancées</a></li><li><a href="avoid.html">Quand ne pas utiliser mod_rewrite</a></li></ul><ul class="seealso"><li><a href="#comments_section">Commentaires</a></li></ul></div>
+<li><img alt="" src="../images/down.gif" /> <a href="#InternalRuleset">Traitement du jeu de règles</a></li>
+</ul><h3>Voir aussi</h3><ul class="seealso"><li><a href="../mod/mod_rewrite.html">Documentation du module mod_rewrite</a></li><li><a href="intro.html">Introduction à mod_rewrite</a></li><li><a href="remapping.html">Redirection et remise en
+correspondance</a></li><li><a href="access.html">Contrôle d'accès</a></li><li><a href="vhosts.html">Serveurs virtuels</a></li><li><a href="proxy.html">Mise en cache</a></li><li><a href="rewritemap.html">Utilisation de RewriteMap</a></li><li><a href="advanced.html">Techniques avancées</a></li><li><a href="avoid.html">Quand ne pas utiliser mod_rewrite</a></li></ul><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="InternalAPI" id="InternalAPI">Phases de l'API</a></h2>
- <p>Le traitement des requêtes par le serveur HTTP Apache se
- déroule en plusieurs phases. Au cours de chaque phase, un ou
- plusieurs modules peuvent être appelés pour traiter la partie
- concernée du cycle de vie de la requête. Les différentes phases
+ <p>Le traitement des requêtes par le serveur HTTP Apache se
+ déroule en plusieurs phases. Au cours de chaque phase, un ou
+ plusieurs modules peuvent être appelés pour traiter la partie
+ concernée du cycle de vie de la requête. Les différentes phases
peuvent consister en traduction d'URL en nom de fichier,
authentification, autorisation, gestion de contenu ou journalisation (la
liste n'est pas exhaustive).</p>
<p>mod_rewrite agit dans deux de ces phases (ou accroches - hooks -
- comme on les nomme souvent) pour la réécriture des URLs.</p>
+ comme on les nomme souvent) pour la réécriture des URLs.</p>
<p>Tout d'abord, il utilise le hook traduction URL vers nom de
- fichier qui intervient après la lecture de la requête HTTP, mais
+ fichier qui intervient après la lecture de la requête HTTP, mais
avant le processus d'autorisation. Ensuite, il utilise le hook
- Fixup, qui intervient après les phases d'autorisation, après la
- lecture des fichiers de configuration de niveau répertoire (fichiers
+ Fixup, qui intervient après les phases d'autorisation, après la
+ lecture des fichiers de configuration de niveau répertoire (fichiers
<code>.htaccess</code>), mais avant l'appel du gestionnaire de
contenu.</p>
- <p>Lorsqu'une requête arrive et une fois le serveur
- correspondant ou le serveur virtuel déterminé, le moteur de
- réécriture commence à traiter toute directive apparaissant dans la
+ <p>Lorsqu'une requête arrive et une fois le serveur
+ correspondant ou le serveur virtuel déterminé, le moteur de
+ réécriture commence à traiter toute directive apparaissant dans la
configuration de niveau serveur (autrement dit dans le
fichier de configuration principal du serveur et les sections
<code class="directive"><a href="../mod/core.html#virtualhost">&lt;Virtualhost&gt;</a></code>).
- Tout ce processus s'exécute au cours de la phase de traduction URL
+ Tout ce processus s'exécute au cours de la phase de traduction URL
vers nom de fichier.</p>
- <p>Quelques étapes plus loin, une fois les répertoires de données
- finaux trouvés, les directives de configuration de niveau répertoire
- (fichiers <code>.htaccess</code> et sections <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>) sont appliquées. Ce processus
- s'exécute au cours de la phase Fixup.</p>
+ <p>Quelques étapes plus loin, une fois les répertoires de données
+ finaux trouvés, les directives de configuration de niveau répertoire
+ (fichiers <code>.htaccess</code> et sections <code class="directive"><a href="../mod/core.html#directory">&lt;Directory&gt;</a></code>) sont appliquées. Ce processus
+ s'exécute au cours de la phase Fixup.</p>
- <p>Dans tous ces cas, mod_rewrite réécrit le
+ <p>Dans tous ces cas, mod_rewrite réécrit le
<code>REQUEST_URI</code> soit vers une nouvelle URL, soit vers un
nom de fichier.</p>
- <p>Dans un contexte de niveau répertoire (autrement dit dans les
+ <p>Dans un contexte de niveau répertoire (autrement dit dans les
fichiers <code>.htaccess</code> et les sections
- <code>Directory</code>), les règles de réécriture s'appliquent après
+ <code>Directory</code>), les règles de réécriture s'appliquent après
la traduction de l'URL en nom de fichier. C'est pourquoi le chemin
URL auquel mod_rewrite compare initialement les directives
<code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code> est le
- chemin complet vers le nom de fichier traduit amputé de la partie
- répertoires (y compris le dernier slash).</p>
-
- <p>Un exemple : si les règles se trouvent dans
- /var/www/foo/.htaccess et si une requête pour /foo/bar/baz est
- traité, une expression comme ^bar/baz$ correspondra.</p>
-
- <p>Si une substitution intervient dans un contexte de répertoire,
- une nouvelle sous-requête interne est générée avec la nouvelle URL,
- ce qui relance le traitement des phases de la requête. Si la
- substitution est un chemin relatif, la directive <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code> détermine le chemin URL
- devant préfixer cette substitution. Dans un contexte de répertoire,
- il faut s'assurer de créer des règles qui
+ chemin complet vers le nom de fichier traduit amputé de la partie
+ répertoires (y compris le dernier slash).</p>
+
+ <p>Un exemple : si les règles se trouvent dans
+ /var/www/foo/.htaccess et si une requête pour /foo/bar/baz est
+ traité, une expression comme ^bar/baz$ correspondra.</p>
+
+ <p>Si une substitution intervient dans un contexte de répertoire,
+ une nouvelle sous-requête interne est générée avec la nouvelle URL,
+ ce qui relance le traitement des phases de la requête. Si la
+ substitution est un chemin relatif, la directive <code class="directive"><a href="../mod/mod_rewrite.html#rewritebase">RewriteBase</a></code> détermine le chemin URL
+ devant préfixer cette substitution. Dans un contexte de répertoire,
+ il faut s'assurer de créer des règles qui
n'effectueront pas de substitution au
- cours d'une passe ultérieure du processus de réécriture au niveau
- répertoire afin d'éviter les bouclages . Voir <a href="http://wiki.apache.org/httpd/RewriteLooping">Bouclage dans le
- processus de réécriture</a> pour une discussion plus détaillée à
- propos de ce problème.</p>
-
- <p>En conséquence de cette manipulation de l'URL , vous devrez
- pensez à confectionner différemment vos règles de réécriture dans un
- contexte de niveau répertoire. En particulier, rappelez-vous que le
- chemin de répertoire sera absent de l'URL que vos règles de
- réécriture verront. Voici quelques exemples qui permettront de
+ cours d'une passe ultérieure du processus de réécriture au niveau
+ répertoire afin d'éviter les bouclages . Voir <a href="http://wiki.apache.org/httpd/RewriteLooping">Bouclage dans le
+ processus de réécriture</a> pour une discussion plus détaillée à
+ propos de ce problème.</p>
+
+ <p>En conséquence de cette manipulation de l'URL , vous devrez
+ pensez à confectionner différemment vos règles de réécriture dans un
+ contexte de niveau répertoire. En particulier, rappelez-vous que le
+ chemin de répertoire sera absent de l'URL que vos règles de
+ réécriture verront. Voici quelques exemples qui permettront de
clarifier les choses :</p>
<table class="bordered">
<tr>
- <th>Position de la règle</th>
- <th>Règle</th>
+ <th>Position de la règle</th>
+ <th>Règle</th>
</tr>
<tr>
@@ -120,82 +120,82 @@ correspondance</a></li><li><a href="access.html">Contrôle d'accès</a></li><li>
</tr>
<tr>
- <td>Fichier .htaccess à la racine des documents</td>
+ <td>Fichier .htaccess à la racine des documents</td>
<td>RewriteRule "^images/(.+)\.jpg" "images/$1.gif"</td>
</tr>
<tr>
- <td>Fichier .htaccess dans le répertoire images</td>
+ <td>Fichier .htaccess dans le répertoire images</td>
<td>RewriteRule "^(.+)\.jpg" "$1.gif"</td>
</tr>
</table>
- <p>Pour une étude plus approfondie de la manière dont mod_rewrite
- manipule les URLs dans les différents contextes, vous pouvez
- consulter les <a href="../mod/mod_rewrite.html#logging">entrées du
- journal</a> générées au cours du processus de réécriture.</p>
+ <p>Pour une étude plus approfondie de la manière dont mod_rewrite
+ manipule les URLs dans les différents contextes, vous pouvez
+ consulter les <a href="../mod/mod_rewrite.html#logging">entrées du
+ journal</a> générées au cours du processus de réécriture.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
-<h2><a name="InternalRuleset" id="InternalRuleset">Traitement du jeu de règles</a></h2>
+<h2><a name="InternalRuleset" id="InternalRuleset">Traitement du jeu de règles</a></h2>
<p>Maintenant, quand mod_rewrite se lance dans ces deux phases de
- l'API, il lit le jeu de règles configurées depuis la structure
- contenant sa configuration (qui a été elle-même créée soit au
- démarrage d'Apache pour le contexte du serveur, soit lors du
- parcours des répertoires par le noyau d'Apache pour le contexte de
- répertoire). Puis le moteur de réécriture est démarré avec le jeu
- de règles contenu (une ou plusieurs règles associées à leurs
- conditions). En lui-même, le mode opératoire du moteur de
- réécriture d'URLs est exactement le même dans les deux contextes
- de configuration. Seul le traitement du résultat final diffère.</p>
-
- <p>L'ordre dans lequel les règles sont définies est important car
- le moteur de réécriture les traite selon une chronologie
- particulière (et pas très évidente). Le principe est le suivant :
- le moteur de réécriture traite les règles (les directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) les unes
- à la suite des autres, et lorsqu'une règle s'applique, il parcourt
- les éventuelles conditions (directives
- <code>RewriteCond</code>directives) associées.
+ l'API, il lit le jeu de règles configurées depuis la structure
+ contenant sa configuration (qui a été elle-même créée soit au
+ démarrage d'Apache pour le contexte du serveur, soit lors du
+ parcours des répertoires par le noyau d'Apache pour le contexte de
+ répertoire). Puis le moteur de réécriture est démarré avec le jeu
+ de règles contenu (une ou plusieurs règles associées à leurs
+ conditions). En lui-même, le mode opératoire du moteur de
+ réécriture d'URLs est exactement le même dans les deux contextes
+ de configuration. Seul le traitement du résultat final diffère.</p>
+
+ <p>L'ordre dans lequel les règles sont définies est important car
+ le moteur de réécriture les traite selon une chronologie
+ particulière (et pas très évidente). Le principe est le suivant :
+ le moteur de réécriture traite les règles (les directives <code class="directive"><a href="../mod/mod_rewrite.html#rewriterule">RewriteRule</a></code>) les unes
+ à la suite des autres, et lorsqu'une règle s'applique, il parcourt
+ les éventuelles conditions (directives
+ <code>RewriteCond</code>directives) associées.
Pour des raisons historiques, les
- conditions précèdent les règles, si bien que le déroulement du
- contrôle est un peu compliqué. Voir la figure 1 pour plus de
- détails.</p>
+ conditions précèdent les règles, si bien que le déroulement du
+ contrôle est un peu compliqué. Voir la figure 1 pour plus de
+ détails.</p>
<p class="figure">
<img src="../images/rewrite_process_uri.png" alt="Flux des comparaisons des directives RewriteRule et RewriteCond" /><br />
- <dfn>Figure 1:</dfn>Déroulement du contrôle à travers le jeu de
- règles de réécriture
+ <dfn>Figure 1:</dfn>Déroulement du contrôle à travers le jeu de
+ règles de réécriture
</p>
- <p>L'URL est tout d'abord comparée au
- <em>Modèle</em> de chaque règle. Lorsqu'une règle ne s'applique
- pas, mod_rewrite stoppe immédiatement le traitement de cette règle
- et passe à la règle suivante. Si l'URL correspond au
- <em>Modèle</em>, mod_rewrite recherche la présence de conditions
+ <p>L'URL est tout d'abord comparée au
+ <em>Modèle</em> de chaque règle. Lorsqu'une règle ne s'applique
+ pas, mod_rewrite stoppe immédiatement le traitement de cette règle
+ et passe à la règle suivante. Si l'URL correspond au
+ <em>Modèle</em>, mod_rewrite recherche la présence de conditions
correspondantes (les directives Rewritecond apparaissant dans la
configuration juste
- avant les règles de réécriture). S'il n'y en a pas, mod_rewrite remplace
- l'URL par une chaîne élaborée à partir de la chaîne de
- <em>Substitution</em>, puis passe à la règle suivante. Si des
- conditions sont présentes, mod_rewrite lance un bouclage
+ avant les règles de réécriture). S'il n'y en a pas, mod_rewrite remplace
+ l'URL par une chaîne élaborée à partir de la chaîne de
+ <em>Substitution</em>, puis passe à la règle suivante. Si des
+ conditions sont présentes, mod_rewrite lance un bouclage
secondaire afin de les traiter selon l'ordre dans lequel elles
- sont définies. La logique de traitement des conditions est
- différente : on ne compare pas l'URL à un modèle. Une chaîne de
- test <em>TestString</em> est tout d'abord élaborée en développant
- des variables, des références arrières, des recherches dans des
- tables de correspondances, etc..., puis cette chaîne de test est
- comparée au modèle de condition <em>CondPattern</em>. Si le modèle
+ sont définies. La logique de traitement des conditions est
+ différente : on ne compare pas l'URL à un modèle. Une chaîne de
+ test <em>TestString</em> est tout d'abord élaborée en développant
+ des variables, des références arrières, des recherches dans des
+ tables de correspondances, etc..., puis cette chaîne de test est
+ comparée au modèle de condition <em>CondPattern</em>. Si le modèle
ne correspond pas, les autres conditions du jeu ne sont pas
- examinées et la règle correspondante ne s'applique pas. Si le
- modèle correspond, la condition suivante est examinée et ainsi de
- suite jusqu'à la dernière condition. Si toutes les conditions sont
- satisfaites, le traitement de la règle en cours se poursuit avec
- le remplacement de l'URL par la chaîne de <em>Substitution</em>.</p>
+ examinées et la règle correspondante ne s'applique pas. Si le
+ modèle correspond, la condition suivante est examinée et ainsi de
+ suite jusqu'à la dernière condition. Si toutes les conditions sont
+ satisfaites, le traitement de la règle en cours se poursuit avec
+ le remplacement de l'URL par la chaîne de <em>Substitution</em>.</p>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/rewrite/tech.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
-<a href="../fr/rewrite/tech.html" title="Français">&nbsp;fr&nbsp;</a></p>
+<a href="../fr/rewrite/tech.html" title="Franç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';
@@ -214,7 +214,7 @@ var comments_identifier = 'http://httpd.apache.org/docs/trunk/rewrite/tech.html'
}
})(window, document);
//--><!]]></script></div><div id="footer">
-<p class="apache">Copyright 2016 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="apache">Copyright 2016 The Apache Software Foundation.<br />Autorisé 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();