<p><span>Langues Disponibles: </span><a href="../en/mod/mod_lua.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_lua.html" title="Français"> fr </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>Fournit des points d'entrée Lua dans différentes parties du
traitement des requêtes httpd</td></tr>
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Expérimental</td></tr>
<pre class="prettyprint lang-lua">r:getcookie(key) -- Obtient un cookie HTTP</pre>
-<pre class="prettyprint lang-lua">r:setcookie{
- key = [key],
- value = [value],
- expires = [expiry],
- secure = [boolean],
- httponly = [boolean],
- path = [path],
- domain = [domain]
-} -- Définit un cookie HTTP, par exemple :
-
-r:setcookie{
- key = "cookie1",
- value = "HDHfa9eyffh396rt",
- expires = os.time() + 86400,
- secure = true
-}</pre>
+<pre class="prettyprint lang-lua">r:setcookie(key, value, secure, expires) -- Définit un cookie HTTP, par exemple :
+r:setcookie("foo", "bar and stuff", false, os.time() + 86400)</pre>
<pre class="prettyprint lang-lua">r:wsupgrade() -- Met à jour une connexion vers les WebSockets si possible (et si demandé) :
r:wsclose()
end</pre>
+<pre class="prettyprint lang-lua">r:wspeek() -- Vérifie s'il y a des données à lire
+
+-- Se met en sommeil tant que rien ne nous est envoyé ...
+while r:wspeek() == false do
+ r.usleep(50000)
+end
+-- Il y a des données à lire !
+local line = r:wsread()</pre>
+
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
local rows = result(0) -- sélectionne tous les enregistrements en mode synchrone
local row = result(-1) -- sélectionne le prochain enregistrement disponible en mode asynchrone
-local row = result(1234) -- sélectionne l'enregistrement 1234 en mode asynchrone</pre>
+local row = result(1234) -- sélectionne l'enregistrement 1234 en mode asynchrone
+local row = result(-1, true) -- Lit l'enregistrement suivant en utilisant les noms d'enregistrements comme index.</pre>
<p>Il est possible de construire une fonction qui renvoie une
fonction itérative permettant de traiter tous les enregistrement en mode
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_remoteip.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_remoteip.html" title="Français"> fr </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>Remplace l'adresse IP et le nom d'hôte apparents du client
pour la requête par l'adresse IP présentée par un mandataire ou un
répartiteur de charge via les en-têtes de la requête.
<p>Le module remplace les adresse IP et nom d'hôte apparents
distants (du client) pour la requête par l'adresse IP indiquée dans
l'en-tête de requête configuré via la directive
- <code class="directive">RemoteIPHeader</code>.</p>
+ <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code>.</p>
<p>Une fois remplacée comme indiqué, cette adresse IP apparente est
utilisée pour la fonctionnalité <code class="directive"><a href="../mod/mod_authz_core.html#require">Require ip</a></code> de
<code>%{remoteip-proxy-ip-list}n</code>. Si l'administrateur doit
stocker ceci dans un en-tête additionnel, la même valeur peut aussi
être enregistrée sous la forme d'un en-tête en utilisant la
- directive <code class="directive">RemoteIPProxiesHeader</code>.</p>
+ directive <code class="directive"><a href="#remoteipproxiesheader">RemoteIPProxiesHeader</a></code>.</p>
<div class="note"><h3>Adresses IPv4 converties au format IPv6</h3>
Avec httpd, d'une manière générale, toute adresse IPv4 convertie au
169.254/16 and 127/8 (ainsi que les adresses IPv6 en dehors du bloc
public 2000::/3 block) ne sont évaluées par mod_remoteip que lorsque
des mandataires internes (intranet)
- <code class="directive">RemoteIPInternalProxy</code> sont enregistrés.</div>
+ <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> sont enregistrés.</div>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPHeader</code> indique à
+ <p>La directive <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code> indique à
<code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> de traiter la valeur de
l'<var>en-tête</var> spécifié comme l'adresse IP du client, ou comme
une liste d'adresses IP clients intermédiaires, en fonction de la
configuration des directives
- <code class="directive">RemoteIPInternalProxy</code> et
- <code class="directive">RemoteIPTrustedProxy</code>. Si ces deux dernières
+ <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> et
+ <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>. Si ces deux dernières
directives ne sont pas utilisées, <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code>
traitera tout hôte présentant une valeur d'IP
- <code class="directive">RemoteIPHeader</code> comme hôte de confiance.</p>
+ <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code> comme hôte de confiance.</p>
<div class="example"><h3>Exemple à usage interne (répartiteur de
charge)</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Client-IP</pre>
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPInternalProxy</code> permet
+ <p>La directive <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> permet
d'ajouter une ou plusieurs adresses (ou blocs d'adresses) auxquelles
on peut faire confiance pour présenter une valeur RemoteIPHeader
valide de l'adresse IP du client. A la différence de la directive
- <code class="directive">RemoteIPTrustedProxy</code>, toute adresse IP
+ <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>, toute adresse IP
présentée dans cet en-tête, y comprises les adresses intranet
privées, sont considérées comme dignes de confiance lorsqu'elles
sont indiquées par ces mandataires.</p>
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPInternalProxyList</code>
+ <p>La directive <code class="directive"><a href="#remoteipinternalproxylist">RemoteIPInternalProxyList</a></code>
permet de spécifier un fichier parcouru au démarrage du serveur pour
construire une liste d'adresses (ou blocs d'adresses), auxquelles
on peut faire confiance pour présenter une valeur RemoteIPHeader
ligne</code> ou
tous les éléments d'une ligne séparés par un espace sont traités de
la même façon qu'avec la directive
- <code class="directive">RemoteIPInternalProxy</code>.</p>
+ <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code>.</p>
<div class="example"><h3>Exemple à usage interne (répartiteur de
charge)</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Client-IP
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPProxiesHeader</code> permet
+ <p>La directive <code class="directive"><a href="#remoteipproxiesheader">RemoteIPProxiesHeader</a></code> permet
de spécifier l'en-tête dans lequel <code class="module"><a href="../mod/mod_remoteip.html">mod_remoteip</a></code> va
collecter une liste de toutes les adresses IP clients intermédiaires
auxquelles on pourra faire confiance pour résoudre la véritable
adresse IP distante. Notez que les adresses intermédiaires
- <code class="directive">RemoteIPTrustedProxy</code> sont enregistrées dans
+ <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code> sont enregistrées dans
cet en-tête, alors que toute adresse intermédiaire
- <code class="directive">RemoteIPInternalProxy</code> est omise.</p>
+ <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code> est omise.</p>
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For
RemoteIPProxiesHeader X-Forwarded-By</pre>
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPTrustedProxy</code> permet
+ <p>La directive <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code> permet
d'ajouter une ou plusieurs adresses, ou blocs d'adresses, auxquelles
on peut faire confiance pour présenter une valeur RemoteIPHeader
valide de l'adresse IP du client. A la différence de la directive
- <code class="directive">RemoteIPInternalProxy</code>, toutes les adresses IP
+ <code class="directive"><a href="#remoteipinternalproxy">RemoteIPInternalProxy</a></code>, toutes les adresses IP
intranet ou privées indiquées par de tels mandataires, y compris les
blocs d'adresses 10/8, 172.16/12, 192.168/16, 169.254/16 et 127/8
(ou située en dehors du bloc IPv6 public 2000::/3), ne sont pas
dignes de confiance en tant qu'adresses IP distantes, et se situent
à gauche dans le contenu de l'en-tête
- <code class="directive">RemoteIPHeader</code>.</p>
+ <code class="directive"><a href="#remoteipheader">RemoteIPHeader</a></code>.</p>
<div class="example"><h3>Exemple d'adresse de confiance (répartiteur de
charge</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For
<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_remoteip</td></tr>
</table>
- <p>La directive <code class="directive">RemoteIPTrustedProxyList</code>
+ <p>La directive <code class="directive"><a href="#remoteiptrustedproxylist">RemoteIPTrustedProxyList</a></code>
permet de spécifier un fichier parcouru au démarrage du serveur pour
construire une liste d'adresses (ou blocs d'adresses), auxquelles
on peut faire confiance pour présenter une valeur RemoteIPHeader
sinon, toutes les lignes séparées par un caractère nouvelle ligne ou
tous les éléments d'une ligne séparés par un espace sont traités de
la même façon qu'avec la directive
- <code class="directive">RemoteIPTrustedProxy</code>.</p>
+ <code class="directive"><a href="#remoteiptrustedproxy">RemoteIPTrustedProxy</a></code>.</p>
<div class="example"><h3>Exemple d'adresse de confiance (répartiteur de
charge</h3><pre class="prettyprint lang-config">RemoteIPHeader X-Forwarded-For
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_rewrite.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_rewrite.html" title="Français"> fr </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>Ce module fournit un moteur de réécriture à base de
règles permettant de réécrire les URLs des requêtes
à la volée</td></tr>
Apache.</p>
</dd>
+ <dt><code>InheritDown</code></dt>
+ <dd>
+
+ <p>Si cette option est activée, toutes les configurations enfants
+ hériteront de la configuration courante. Il en est de même si l'on
+ spécifie <code>RewriteOptions Inherit</code> dans toutes les
+ configurations enfants. Voir l'option <code>Inherit</code> pour
+ plus de détails à propos de la manière dont les relations
+ parent-enfants sont traitées. Cette option est disponible à partir
+ de la version 2.4.8 du serveur HTTP Apache.</p>
+ </dd>
+
+ <dt><code>InheritDownBefore</code></dt>
+ <dd>
+
+ <p>L'effet de cette option est équivalent à celui de l'option
+ <code>InheritDown</code> ci-dessus, mais les règles de la
+ configuration parente s'appliquent <strong>avant</strong> toute
+ règle de la configuration enfant. Cette option est disponible à partir
+ de la version 2.4.8 du serveur HTTP Apache.</p>
+ </dd>
+
+ <dt><code>IgnoreInherit</code></dt>
+ <dd>
+
+ <p>Si cette option est activée, les configurations courante et
+ enfants ignoreront toute règle héritée d'une configuration parente
+ via les options <code>InheritDown</code> ou
+ <code>InheritDownBefore</code>. Cette option est disponible à partir
+ de la version 2.4.8 du serveur HTTP Apache.</p>
+ </dd>
+
<dt><code>AllowNoSlash</code></dt>
<dd>
<p>Par défaut, <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> ignore les URLs qui
...</a></em></td>
</tr>
<tr>
+ <td>END</td>
+ <td>Stoppe le processus de réécriture immédiatement et
+ n'applique plus aucune règle. Empêche aussi l'application
+ ultérieure de règles de réécriture dans les contextes de
+ répertoire et de fichier .htaccess (disponible à partir de la
+ version 2.3.9 du serveur HTTP Apache). <em><a href="../rewrite/flags.html#flag_end">détails ...</a></em></td>
+ </tr>
+ <tr>
<td>env|E=[!]<em>VAR</em>[:<em>VAL</em>]</td>
<td>Définit la variable d'environnement <em>VAR</em> (à la valeur
<em>VAL</em> si elle est fournie). La variante !<em>VAR</em>
<td>Arrête le processus de réécriture immédiatement et n'applique
plus aucune règle. Prêtez une attention particulière aux mises
en garde concernant les contextes de niveau répertoire et
- .htaccess (voir aussi le drapeau END). <em><a href="../rewrite/flags.html#flag_end">détails ...</a></em></td>
+ .htaccess (voir aussi le drapeau END). <em><a href="../rewrite/flags.html#flag_l">détails ...</a></em></td>
</tr>
<tr>
<td>next|N</td>
optionnel. <em><a href="../rewrite/flags.html#flag_r">détails ...</a></em>
</td>
</tr>
- <tr>
- <td>END</td>
- <td>Arrête le processus de réécriture immédiatement et
- n'applique plus aucune règle. Empêche aussi l'exécution
- ultérieure de règles de réécriture dans des contextes de
- répertoire et des fichiers .htaccess (disponible depuis la
- version 2.3.9) <em><a href="../rewrite/flags.html#flag_l">détails ...</a></em></td>
- </tr>
<tr>
<td>skip|S=<em>nombre</em></td>
<td>Si la règle courante s'applique, le moteur de réécriture