From 6beeb1b708550be0d4a53b272283e17e5e35fe17 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 17:01:30 +0200 Subject: Adding upstream version 2.4.57. Signed-off-by: Daniel Baumann --- docs/manual/mod/mod_setenvif.html.fr.utf8 | 373 ++++++++++++++++++++++++++++++ 1 file changed, 373 insertions(+) create mode 100644 docs/manual/mod/mod_setenvif.html.fr.utf8 (limited to 'docs/manual/mod/mod_setenvif.html.fr.utf8') diff --git a/docs/manual/mod/mod_setenvif.html.fr.utf8 b/docs/manual/mod/mod_setenvif.html.fr.utf8 new file mode 100644 index 0000000..77e7db3 --- /dev/null +++ b/docs/manual/mod/mod_setenvif.html.fr.utf8 @@ -0,0 +1,373 @@ + + + + + +mod_setenvif - Serveur HTTP Apache Version 2.4 + + + + + + + + +
<-
+ +
+

Module Apache mod_setenvif

+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko  | + tr 

+
+ + + +
Description:Permet de définir des variables d'environnement en fonction +de certainescaractéristiques de la requête
Statut:Base
Identificateur de Module:setenvif_module
Fichier Source:mod_setenvif.c
+

Sommaire

+ + +

Le module mod_setenvif vous permet de définir + des variables d'environnement internes de manière conditionnelle en fonction + de critères que vous pouvez spécifier. Ces variables d'environnement + peuvent être utilisées par d'autres parties du serveur pour prendre + des décisions quant aux actions à entreprendre, et pour déterminer + si les scripts CGI et les pages SSI doivent pouvoir y accéder.

+ +

Les directives sont interprétées selon l'ordre dans lequel elles + apparaîssent dans les fichiers de configuration. Ainsi, des + séquences plus complexes peuvent être utilisées, comme dans cet + exemple qui définit netscape si le navigateur est Mozilla et non + MSIE.

+ +
BrowserMatch ^Mozilla netscape
+BrowserMatch MSIE !netscape
+ + +

Lorsque le serveur cherche un chemin via une sous-requête interne (par exemple la + recherche d'un DirectoryIndex), ou lorsqu'il génère un + listing du contenu d'un répertoire via le module + mod_autoindex, la sous-requête n'hérite pas des + variables d'environnement spécifiques à la requête. En outre, à cause + des phases de l'API auxquelles mod_setenvif prend + part, les directives SetEnvIf ne sont pas évaluées + séparément dans la sous-requête.

+ +
+ + +
top
+

Directive BrowserMatch

+ + + + + + + +
Description:Définit des variables d'environnement en fonction du +contenu de l'en-tête HTTP User-Agent
Syntaxe:BrowserMatch regex [!]env-variable[=valeur] +[[!]env-variable[=valeur]] ...
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:FileInfo
Statut:Base
Module:mod_setenvif
+

La directive BrowserMatch est un cas + particulier de la directive SetEnvIf, qui définit des variables + d'environnement en fonction du contenu de l'en-tête de requête HTTP + User-Agent. Les deux lignes suivantes produisent le même + effet :

+
BrowserMatch Robot is_a_robot
+SetEnvIf User-Agent Robot is_a_robot
+ + +

Quelques exemples supplémentaires :

+
BrowserMatch ^Mozilla forms jpeg=yes browser=netscape
+BrowserMatch "^Mozilla/[2-3]" tables agif frames javascript
+BrowserMatch MSIE !javascript
+ + +
+
top
+

Directive BrowserMatchNoCase

+ + + + + + + +
Description:Définit des variables d'environnement en fonction du +contenu de l'en-tête HTTP User-Agent sans tenir compte de la +casse
Syntaxe:BrowserMatchNoCase regex [!]env-variable[=valeur] + [[!]env-variable[=valeur]] ...
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:FileInfo
Statut:Base
Module:mod_setenvif
+ +

La directive BrowserMatchNoCase est + identique sur le plan sémantique à la directive BrowserMatch. Elle permet + cependant une comparaison insensible à la casse. Par exemple :

+
BrowserMatchNoCase mac platform=macintosh
+BrowserMatchNoCase win platform=windows
+ + +

Les directives BrowserMatch et + BrowserMatchNoCase sont des cas particuliers + des directives SetEnvIf + et SetEnvIfNoCase. + Ainsi, les deux lignes suivantes produisent le même effet :

+
BrowserMatchNoCase Robot is_a_robot
+SetEnvIfNoCase User-Agent Robot is_a_robot
+ + +
+
top
+

Directive SetEnvIf

+ + + + + + + +
Description:Définit des variables d'environnement en fonction des +attributs de la requête
Syntaxe:SetEnvIf attribut + regex [!]env-variable[=valeur] + [[!]env-variable[=valeur]] ...
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:FileInfo
Statut:Base
Module:mod_setenvif
+

La directive SetEnvIf permet de définir + des variables d'environnement en fonction des attributs de la + requête. L'attribut spécifié comme premier argument peut + se présenter sous l'une des trois formes suivantes :

+ +
    +
  1. Un champ d'en-tête de requête HTTP (voir la RFC2616 pour + plus d'information à leur propos) ; par exemple : Host, + User-Agent, Referer, ou + Accept-Language. Il est possible d'utiliser une + expression rationnelle pour spécifier un jeu d'en-têtes de + requête.
  2. + +
  3. Une des caractéristiques de la requête suivantes : +
      +
    • Remote_Host - le nom d'hôte (s'il est disponible) + du client qui effectue la requête
    • + +
    • Remote_Addr - l'adresse IP du client qui effectue + la requête
    • + +
    • Server_Addr - l'adresse IP du serveur qui a reçu + la requête (uniquement à partir des versions supérieures à + 2.0.43)
    • + +
    • Request_Method - Le nom de la méthode HTTP + utilisée (GET, POST, et + cetera...)
    • + +
    • Request_Protocol - le nom et la version du + protocole utilisé pour la requête (par exemple "HTTP/0.9", + "HTTP/1.1", etc...)
    • + +
    • Request_URI - la ressource demandée dans la ligne + de requête HTTP -- en général la partie de l'URL suivant le + protocole et le nom du serveur, sans la chaîne d'arguments. Voir + la directive RewriteCond du module + mod_rewrite pour plus d'informations sur la + manière de mettre en correspondance votre chaîne d'arguments.
    • +
    +
  4. + +
  5. Le nom d'une variable d'environnement parmi la liste de celles qui +sont associées à la requête. Ceci permet à la directive +SetEnvIf d'effectuer des tests en fonction du +résultat de comparaisons précédentes. Seules les variables +d'environnement définies par des directives +SetEnvIf[NoCase] précédentes sont disponibles pour +effectuer des tests de cette manière. 'Précédentes' signifie qu'elles se +trouvent à un niveau plus global de la configuration (par exemple au +niveau du serveur principal), ou plus haut chronologiquement dans le +contexte de la directive. Les variables d'environnement ne seront prises +en compte que si aucune correspondance n'a été trouvée parmi les +caractéristiques de la requête, et si attribut n'a pas été +spécifié sous la forme d'une expression rationnelle.
  6. + +
+ +

Le second argument (regex) est une expression rationnelle. Si regex +correspond à l'attribut, les arguments suivants sont évalués.

+ +

Le reste des arguments constitue les noms des variables à définir, +ainsi que les valeurs optionnelles qui doivent leur être affectées. Ils +peuvent se présenter sous les formes suivantes :

+ +
    +
  1. nom-variable, ou
  2. + +
  3. !nom-variable, ou
  4. + +
  5. nom-variable=valeur
  6. +
+ +

Dans la première forme, la valeur sera définie à "1". Dans la + seconde forme, la variable sera supprimée si elle a été définie au + préalable, et dans la troisième forme, la variable sera définie à la + valeur littérale spécifiée par valeur. Depuis + la version 2.0.51, Apache httpd reconnaît les occurrences de variables + $1..$9 à l'intérieur de + valeur, et les remplace par les + sous-expressions entre parenthèses correspondantes de + regex. $0 permet d'accéder à l'ensemble de la chaîne + qui correspond à ce modèle.

+ +
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 Request_URI "\.(.*)$" EXTENSION=$1
+    
+SetEnvIf ^TS  ^[a-z]  HAVE_TS
+ + +

Les trois premières lignes définissent la variable + d'environnement objet_est_une_image si l'objet de la + requête est un fichier image, et la quatrième définit la variable + intra_site_referral si la page référante se trouve + quelque part dans le site web + www.mydomain.example.com.

+ +

La dernière ligne définit la variable d'environnement + HAVE_TS si la requête contient un en-tête dont le nom + commence par "TS" et dont la valeur commence par tout caractère du + jeu [a-z].

+ +

Voir aussi

+ +
+
top
+

Directive SetEnvIfExpr

+ + + + + + + +
Description:Définit des variables d'environnement en fonction d'une expression ap_expr
Syntaxe:SetEnvIfExpr expr + [!]env-variable[=valeur] + [[!]env-variable[=valeur]] ...
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:FileInfo
Statut:Base
Module:mod_setenvif
+

La directive SetEnvIfExpr permet de + définir des variables d'environnement en fonction d'une expression + <If> ap_expr. Cette + expression est évaluée à l'exécution, et utilise les variables + d'environnement env-variable de la même manière que la + directive SetEnvIf.

+ +
SetEnvIfExpr "tolower(req('X-Sendfile')) == 'd:\images\very_big.iso')" iso_delivered
+ + +

Dans cet exemple, la variable d'environnement + iso_delivered est définie chaque fois que notre + application tente de l'envoyer via X-Sendfile.

+ +

Il pourrait être plus utile de définir une variable rfc1918 si + l'adresse IP distante est une adresse privée au sens de la RFC 1918 + :

+ +
SetEnvIfExpr "-R '10.0.0.0/8' || -R '172.16.0.0/12' || -R '192.168.0.0/16'" rfc1918
+ + +

Voir aussi

+ +
+
top
+

Directive SetEnvIfNoCase

+ + + + + + + +
Description:Définit des variables d'environnement en fonction des +attributs de la requête sans tenir compte de la casse
Syntaxe:SetEnvIfNoCase attribut regex + [!]env-variable[=valeur] + [[!]env-variable[=valeur]] ...
Contexte:configuration globale, serveur virtuel, répertoire, .htaccess
Surcharges autorisées:FileInfo
Statut:Base
Module:mod_setenvif
+ +

La directive SetEnvIfNoCase est identique + d'un point de vue sémantique à la directive SetEnvIf, 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 :

+
SetEnvIfNoCase Host Example\.Org site=example
+ + +

Cette ligne va définir la variable d'environnement + site avec la valeur "example" si le champ + d'en-tête de requête HTTP Host: est présent et contient + Example.Org, example.org, ou une autre + combinaison des mêmes caractères, sans tenir compte de la casse.

+ +
+
+
+

Langues Disponibles:  en  | + fr  | + ja  | + ko  | + tr 

+
top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed 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 Libera.chat, or sent to our mailing lists.
+
+ \ No newline at end of file -- cgit v1.2.3