From: Lucien Gentis
De plus, on peut spécifier la valeur spéciale default
diff --git a/docs/manual/mod/mod_authnz_ldap.xml.fr b/docs/manual/mod/mod_authnz_ldap.xml.fr
index 17488fe450a..c42bf8be2c6 100644
--- a/docs/manual/mod/mod_authnz_ldap.xml.fr
+++ b/docs/manual/mod/mod_authnz_ldap.xml.fr
@@ -1,7 +1,7 @@
-
+
-
+
@@ -30,7 +30,7 @@ HTTP de base.
Lorsqu'on utilise ldap
à la directive
+ invoqué en affectant la valeur ldap
à la directive
Ce module effectue une mise en cache des résultats du processus
+ Ce module effectue une mise en cache des résultats du processus
d'authentification et d'autorisation en fonction de la configuration du
-module L'utilisateur se voit accorder l'accès selon un processus en deux
- phases. La première phase est l'authentification, au cours de
+ L'utilisateur se voit accorder l'accès selon un processus en deux
+ phases. La première phase est l'authentification, au cours de
laquelle le fournisseur d'authentification
- Au cours de la phase d'authentification,
- ldap
à la directive
+ authz_ldap. Le fournisseur d'authentification authn_ldap peut être
+ invoqué en affectant la valeur ldap
à la directive
Les directives utilisées durant la phase de recherche/connexion +
Les directives utilisées durant la phase de recherche/connexion sont les suivantes :
Spécifie le serveur LDAP, le DN de base, l'attribut à + | Spécifie le serveur LDAP, le DN de base, l'attribut à utiliser pour la recherche, ainsi que les filtres de recherche - supplémentaires. | + supplémentaires.
Détermine le comportement de la directive Require
+ |
Les directives ldap-user
, ldap-dn
,
ldap-group
, ldap-attribute
et
ldap-filter
. D'autres types d'autorisations sont
- disponibles, sous réserve du chargement de modules d'autorisation
- supplémentaires.
Depuis la version 2.4.8, les directives require LDAP supportent les expressions.
La directive Require ldap-user
permet de spécifier
- les noms des utilisateurs autorisés à accéder à la ressource.
+
La directive Require ldap-user
permet de spécifier
+ les noms des utilisateurs autorisés à accéder à la ressource.
Lorsque Require ldap-user
, pour vérifier si ce nom
- d'utilisateur correspond à l'entrée LDAP extraite. On peut accorder
- l'accès à plusieurs utilisateurs en plaçant plusieurs nom
- d'utilisateurs sur la même ligne séparés par des espaces. Si un nom
- d'utilisateur contient des espaces, il doit être entouré de
- guillemets. On peut aussi accorder l'accès à plusieurs utilisateurs
+ l'annuaire LDAP, il effectue une opération de comparaison LDAP en
+ utilisant le nom d'utilisateur spécifié par la directive
+ Require ldap-user
, pour vérifier si ce nom
+ d'utilisateur correspond à l'entrée LDAP extraite. On peut accorder
+ l'accès à plusieurs utilisateurs en plaçant plusieurs nom
+ d'utilisateurs sur la même ligne séparés par des espaces. Si un nom
+ d'utilisateur contient des espaces, il doit être entouré de
+ guillemets. On peut aussi accorder l'accès à plusieurs utilisateurs
en utilisant une directive Require ldap-user
par
utilisateur. Par exemple, avec la directive ldap://ldap/o=Example?cn
(spécifiant donc que l'attribut
- cn
sera utilisé pour les recherches), on pourra
- utiliser les directives Require suivantes pour restreindre l'accès
+ module="mod_authnz_ldap">AuthLDAPURL définie Ã
+ ldap://ldap/o=Example?cn
(spécifiant donc que l'attribut
+ cn
sera utilisé pour les recherches), on pourra
+ utiliser les directives Require suivantes pour restreindre l'accès
:
De par la manière dont
De par la manière dont cn
sous lequel elle est enregistrée dans l'annuaire
+ cn
sous lequel elle est enregistrée dans l'annuaire
LDAP. Une seule ligne Require ldap-user
suffit pour
- toutes les valeurs de l'attribut dans l'entrée LDAP de
+ toutes les valeurs de l'attribut dans l'entrée LDAP de
l'utilisateur.
Si l'attribut uid
avait été spécifié à la place de
- l'attribut cn
dans l'URL précédente, les trois lignes
- ci-dessus auraient pû être condensées en une seule ligne :
Si l'attribut uid
avait été spécifié à la place de
+ l'attribut cn
dans l'URL précédente, les trois lignes
+ ci-dessus auraient pû être condensées en une seule ligne :
Cette directive permet de spécifier un groupe LDAP dont les - membres auront l'autorisation d'accès. Elle prend comme argument le +
Cette directive permet de spécifier un groupe LDAP dont les + membres auront l'autorisation d'accès. Elle prend comme argument le DN du groupe LDAP. Note : n'entourez pas le nom du groupe avec des - guillemets. Par exemple, supposons que l'entrée suivante existe dans + guillemets. Par exemple, supposons que l'entrée suivante existe dans l'annuaire LDAP :
dn: cn=Administrators, o=Example @@ -432,15 +434,17 @@ uniqueMember: cn=Barbara Jenson, o=Example uniqueMember: cn=Fred User, o=Example
La directive suivante autoriserait alors l'accès à Fred et +
La directive suivante autoriserait alors l'accès à Fred et Barbara :
-Les membres peuvent aussi se trouver dans les sous-groupes du
- groupe LDAP spécifié si la directive
dn: cn=Employees, o=Example objectClass: groupOfUniqueNames @@ -470,17 +474,17 @@ uniqueMember: cn=Jim Swenson, o=Example uniqueMember: cn=Elliot Rhodes, o=Example
Les directives suivantes autoriseraient alors l'accès à Bob +
Les directives suivantes autoriseraient alors l'accès à Bob Ellis, Tom Jackson, Barbara Jenson, Fred User, Allan Jefferson, et - Paul Tilley, mais l'interdiraient à Jim Swenson, ou Elliot Rhodes - (car ils sont situés dans un sous-groupe de niveau de profondeur 2) + Paul Tilley, mais l'interdiraient à Jim Swenson, ou Elliot Rhodes + (car ils sont situés dans un sous-groupe de niveau de profondeur 2) :
Le comportement de cette directive est modifié par les directives +
Le comportement de cette directive est modifié par les directives
La directive La directive La directive suivante accorderait l'accès à un DN spécifique
+ La directive suivante accorderait l'accès à un DN spécifique
: Le comportement ce cette directive est modifié par la directive
+ Le comportement ce cette directive est modifié par la directive
Require ldap-dn
permet à
- l'administrateur d'accorder l'utorisation d'accès en fonction du DN.
- Elle permet de spécifier un DN pour lequel l'accès est autorisé. Si
+ Require ldap-dn
permet Ã
+ l'administrateur d'accorder l'utorisation d'accès en fonction du DN.
+ Elle permet de spécifier un DN pour lequel l'accès est autorisé. Si
le DN extrait de
- l'annuaire correspond au DN spécifié par la directive Require
- ldap-dn
, l'autorisation d'accès est accordée. Note :
+ l'annuaire correspond au DN spécifié par la directive Require
+ ldap-dn
, l'autorisation d'accès est accordée. Note :
n'entourez pas Le DN de guillemets.
La directive Require ldap-attribute
permet à
- l'administrateur d'accorder l'autorisation d'accès en fonction des
- attributs de l'utilisateur authentifié dans l'annuaire LDAP. Si la
- valeur de l'attribut dans l'annuaire correspond à la valeur
- spécifiée par la directive, l'autorisation d'accès est accordée.
La directive Require ldap-attribute
permet Ã
+ l'administrateur d'accorder l'autorisation d'accès en fonction des
+ attributs de l'utilisateur authentifié dans l'annuaire LDAP. Si la
+ valeur de l'attribut dans l'annuaire correspond à la valeur
+ spécifiée par la directive, l'autorisation d'accès est accordée.
La directive suivante accorderait l'autorisation d'accès à tout +
La directive suivante accorderait l'autorisation d'accès à tout utilisateur dont l'attribut employeeType a pour valeur "actif" :
-Plusieurs paires attribut/valeur peuvent être spécifiées par une - même directive en les séparant par des espaces, ou en définissant +
Plusieurs paires attribut/valeur peuvent être spécifiées par une
+ même directive en les séparant par des espaces, ou en définissant
plusieurs directives Require ldap-attribute
. La logique
- sous-jacente à une liste de paires attribut/valeur est une opération
- OU. L'autorisation d'accès sera accordée si au moins une paire
- attribut/valeur de la liste spécifiée correspond à la paire
- attribut/valeur de l'utilisateur authentifié. Si elle contient des
- espaces, la valeur, et seulement la valeur, doit être entourée de
+ sous-jacente à une liste de paires attribut/valeur est une opération
+ OU. L'autorisation d'accès sera accordée si au moins une paire
+ attribut/valeur de la liste spécifiée correspond à la paire
+ attribut/valeur de l'utilisateur authentifié. Si elle contient des
+ espaces, la valeur, et seulement la valeur, doit être entourée de
guillemets.
La directive suivante accorderait l'autorisation d'accès à tout +
La directive suivante accorderait l'autorisation d'accès à tout utilisateur dont l'attribut city aurait pour valeur "San Jose", ou donc l'attribut status aurait pour valeur "actif" :
-La directive Require ldap-filter
permet à
- l'administrateur d'accorder l'autorisation d'accès en fonction d'un
- filtre de recherche LDAP complexe. L'autorisation d'accès est
- accordée si le DN renvoyé par le filtre de recherche correspond au
- DN de l'utilisateur authentifié.
La directive Require ldap-filter
permet Ã
+ l'administrateur d'accorder l'autorisation d'accès en fonction d'un
+ filtre de recherche LDAP complexe. L'autorisation d'accès est
+ accordée si le DN renvoyé par le filtre de recherche correspond au
+ DN de l'utilisateur authentifié.
La directive suivante accorderait l'autorisation d'accès à tout - utilisateur possédant un téléphone cellulaire et faisant partie du - département "marketing" :
+La directive suivante accorderait l'autorisation d'accès à tout + utilisateur possédant un téléphone cellulaire et faisant partie du + département "marketing" :
-Alors que la directive Require ldap-attribute
se
contente d'une simple comparaison d'attributs, la directive
- Require ldap-filter
effectue une opération de recherche
- dans l'annuaire LDAP en utilisant le filtre de recherche spécifié.
- Si une simple comparaison d'attributs suffit, l'opération de
- comparaison effectuée par ldap-attribute
sera plus
- rapide que l'opération de recherche effectuée par
+ Require ldap-filter
effectue une opération de recherche
+ dans l'annuaire LDAP en utilisant le filtre de recherche spécifié.
+ Si une simple comparaison d'attributs suffit, l'opération de
+ comparaison effectuée par ldap-attribute
sera plus
+ rapide que l'opération de recherche effectuée par
ldap-filter
, en particulier dans le cas d'un annuaire
LDAP de grande taille.
cn
,
+ Encore un exemple similaire aux précédents, mais cette fois,
+ c'est l'attribut cn qui est utilisé pour la recherche à la place
+ de l'UID. Notez que ceci peut poser problème si plusieurs
+ utilisateurs de l'annuaire partagent le même cn
,
car une recherche sur le cn
doit
- retourner une entrée et une seule. C'est pourquoi cette
- approche n'est pas recommandée : il est préférable de choisir un
- attribut de votre annuaire dont l'unicité soit garantie, comme
+ retourner une entrée et une seule. C'est pourquoi cette
+ approche n'est pas recommandée : il est préférable de choisir un
+ attribut de votre annuaire dont l'unicité soit garantie, comme
uid
.
qpagePagerID
. Seuls ces utilisateurs
- (authentifiés via leur UID) se verront accorder l'autorisation
- d'accès :
+ (authentifiés via leur UID) se verront accorder l'autorisation
+ d'accès :
L'exemple suivant illustre la puissance des filtres pour - effectuer des requêtes complexes. Sans les filtres, il aurait - été nécessaire de créer un nouveau groupe LDAP et de s'assurer + effectuer des requêtes complexes. Sans les filtres, il aurait + été nécessaire de créer un nouveau groupe LDAP et de s'assurer de la synchronisation des membres du groupe avec les - utilisateurs possédant un bippeur. Tout devient limpide avec les - filtres. Nous avons pour but d'accorder l'autorisation d'accès à - tout utilisateur disposant d'un bippeur ainsi qu'à Joe Manager - qui ne possède pas de bippeur, mais doit tout de même pouvoir - accéder à la ressource :
+ utilisateurs possédant un bippeur. Tout devient limpide avec les + filtres. Nous avons pour but d'accorder l'autorisation d'accès à + tout utilisateur disposant d'un bippeur ainsi qu'à Joe Manager + qui ne possède pas de bippeur, mais doit tout de même pouvoir + accéder à la ressource :Ce dernier exemple peut sembler confus au premier abord ; en
- fait, il permet de mieux comprendre à quoi doit ressembler le
+ fait, il permet de mieux comprendre à quoi doit ressembler le
filtre en fonction de l'utilisateur qui se connecte. Si Fred
User se connecte en tant que fuser
, le filtre devra
- ressembler à :
Un recherche avec le filtre ci-dessus ne retournera un - résultat positif que si fuser dispose d'un bippeur. Si + résultat positif que si fuser dispose d'un bippeur. Si Joe Manager se connecte en tant que jmanager, le filtre - devra ressembler à :
+ devra ressembler à :Un recherche avec le filtre ci-dessus retournera un - résultat positif que jmanager dispose d'un + résultat positif que jmanager dispose d'un bippeur ou non
Un second paramètre optionnel peut être ajouté à la directive +
Un second paramètre optionnel peut être ajouté à la directive
Pour spécifier un serveur LDAP sécurisé, utilisez +
Pour spécifier un serveur LDAP sécurisé, utilisez
ldaps:// au lieu de
ldap:// dans la directive
Au cours du processus d'authentification, les attributs LDAP
- spécifiés par la directive
Au cours du processus d'autorisation, les attributs LDAP
- spécifiés par la directive
Si les champs attribut contiennent le nom, le CN et le numéro de - téléphone d'un utilisateur, un programme CGI pourra accéder à ces - informations sans devoir effectuer une autre requête LDAP pour +
Si les champs attribut contiennent le nom, le CN et le numéro de + téléphone d'un utilisateur, un programme CGI pourra accéder à ces + informations sans devoir effectuer une autre requête LDAP pour les extraire de l'annuaire.
-Ceci a pour effet de simplifier considérablement le code et la - configuration nécessaire de certaines applications web.
+Ceci a pour effet de simplifier considérablement le code et la + configuration nécessaire de certaines applications web.
Active Directory peut supporter plusieurs domaines à la fois. +
Active Directory peut supporter plusieurs domaines à la fois. Pour faire la distinction entre les utilisateurs de plusieurs - domaines, on peut ajouter à l'entrée de l'utilisateur dans - l'annuaire un identifiant appelé Nom + domaines, on peut ajouter à l'entrée de l'utilisateur dans + l'annuaire un identifiant appelé Nom Principal d'Utilisateur (User Principle Name ou UPN). Cet UPN se - compose en général du nom de compte de l'utilisateur, suivi du nom - du domaine considéré, par exemple untel@nz.example.com.
+ compose en général du nom de compte de l'utilisateur, suivi du nom + du domaine considéré, par exemple untel@nz.example.com.Vous voudrez probablement configurer le module
Pour y parvenir, on utilise le concept de Catalogue Global d'Active Directory. Ce Catalogue Global est une copie en lecture - seule des attributs sélectionnés de tous les serveurs de la forêt - Active Directory. Une requête vers le + seule des attributs sélectionnés de tous les serveurs de la forêt + Active Directory. Une requête vers le Catalogue Global permet donc d'atteindre tous les domaines en une - seule fois, sans avoir à se connecter aux différents serveurs, via - des liaisons dont certaines peuvent être lentes.
+ seule fois, sans avoir à se connecter aux différents serveurs, via + des liaisons dont certaines peuvent être lentes. -Lorsqu'il est activé, la Catalogue Global est un serveur - d'annuaire indépendant accessible sur le port 3268 (3269 pour SSL). +
Lorsqu'il est activé, la Catalogue Global est un serveur + d'annuaire indépendant accessible sur le port 3268 (3269 pour SSL). Pour rechercher un utilisateur, effectuez une recherche sur l'attribut userPrincipalName, avec une base de recherche vide, comme suit :
@@ -782,18 +795,18 @@ AuthLDAPURL ldap://10.0.0.1:3268/?userPrincipalName?sub FrontPage avec mod_authnz_ldapNormalement, FrontPage utilise des fichiers utilisateur/groupe
- spécifiques à FrontPage-web (c'est à dire les modules
+ spécifiques à FrontPage-web (c'est à dire les modules
Lorsqu'un site web FrontPage a été créé, lui adjoindre
- l'authentification LDAP consiste à ajouter les directives suivantes
- à chaque fichier .htaccess
qui sera créé dans
+
Lorsqu'un site web FrontPage a été créé, lui adjoindre
+ l'authentification LDAP consiste à ajouter les directives suivantes
+ Ã chaque fichier .htaccess
qui sera créé dans
le site web :
FrontPage restreint l'accès à un site web en ajoutant la +
FrontPage restreint l'accès à un site web en ajoutant la
directive Require valid-user
aux fichiers
.htaccess
. La directive Require valid-user
- permettra l'accès à tout utilisateur valide du point de vue
- LDAP. Cela signifie que tout utilisateur possédant une entrée
- dans l'annuaire LDAP sera considéré comme valide, alors que
- FrontPage ne considère comme valides que les utilisateurs
- enregistrés dans le fichier des utilisateurs local. En remplaçant
+ permettra l'accès à tout utilisateur valide du point de vue
+ LDAP. Cela signifie que tout utilisateur possédant une entrée
+ dans l'annuaire LDAP sera considéré comme valide, alors que
+ FrontPage ne considère comme valides que les utilisateurs
+ enregistrés dans le fichier des utilisateurs local. En remplaçant
l'autorisation par groupe LDAP par une autorisation par fichier de
groupe, Apache sera en mesure de consulter le fichier des
- utilisateurs local (géré par FrontPage) - au lieu de l'annuaire LDAP
+ utilisateurs local (géré par FrontPage) - au lieu de l'annuaire LDAP
- lors du processus d'autorisation des utilisateurs.
Une fois les directives ajoutées selon ce qui précède, les - utilisateurs FrontPage pourront effectuer toutes les opérations de - gestion à partir du client FrontPage.
+Une fois les directives ajoutées selon ce qui précède, les + utilisateurs FrontPage pourront effectuer toutes les opérations de + gestion à partir du client FrontPage.
.htaccess
. Elles ne fonctionneront pas si vous les
placez dans une section .htaccess
de FrontPage. Si les directives
- de .htaccess
que les directives FrontPage,
+ de .htaccess
que les directives FrontPage,
la configuration ne fonctionnera pas, car
.htaccess
, et par conséquent ne
- pourra jamais trouver le fichier des utilisateurs géré par
+ traiter le fichier .htaccess
, et par conséquent ne
+ pourra jamais trouver le fichier des utilisateurs géré par
FrontPage.Cette directive permet de spécifier le préfixe ajouté aux +
Cette directive permet de spécifier le préfixe ajouté aux variables d'environnement durant la phase d'autorisation. Si la - valeur spécifiée est AUTHENTICATE_, les utilisateurs de ces - variables d'environnement verront les mêmes informations, que le + valeur spécifiée est AUTHENTICATE_, les utilisateurs de ces + variables d'environnement verront les mêmes informations, que le serveur effectue une authentification, une autorisation, ou les deux.
Require
+ Aucune variable d'autorisation n'est définie lorsqu'un utilisateur
+ s'est vu autoriser l'accès via la directive Require
valid-user
.
Par défaut, des fournisseurs d'authentification sont appelés
- si un utilisateur ne possède pas de DN, mais ne le sont pas si
- l'utilisateur possède un DN et si son mot de passe ne peut pas être
- vérifié lors d'une connexion au serveur LDAP. Si la directive
-
Par défaut, des fournisseurs d'authentification sont appelés
+ si un utilisateur ne possède pas de DN, mais ne le sont pas si
+ l'utilisateur possède un DN et si son mot de passe ne peut pas être
+ vérifié lors d'une connexion au serveur LDAP. Si la directive
+
Ceci permet aux utilisateurs présent à la fois dans l'annuaire +
Ceci permet aux utilisateurs présent à la fois dans l'annuaire
LDAP et dans un fichier
Par défaut, le serveur convertit le nom d'utilisateur pour +
Par défaut, le serveur convertit le nom d'utilisateur pour l'authentification de base en nom distinctif LDAP (DN) soit de - manière anonyme, soit avec un couple nom/mot de passe dédié. Cette - directive permet de forcer le serveur à utiliser les véritables nom + manière anonyme, soit avec un couple nom/mot de passe dédié. Cette + directive permet de forcer le serveur à utiliser les véritables nom d'utilisateur et mot de passe fournis par l'utilisateur pour effectuer la recherche initiale du DN.
Si le nom d'utilisateur ne peut pas s'authentifier directement
- et nécessite de légères modifications, voir la directive
Cette directive ne doit être utilisée que si votre serveur LDAP +
Cette directive ne doit être utilisée que si votre serveur LDAP
n'autorise pas les recherches anonymes, ou si vous ne pouvez pas
- utiliser de nom d'utilisateur dédié via la directive
Si la directive
L'expression rationnelle est comparée au nom d'utilisateur pour +
L'expression rationnelle est comparée au nom d'utilisateur pour l'authentification de base courant. L'argument - substitution peut contenir des références arrières, mais + substitution peut contenir des références arrières, mais n'effectue aucune autre interpolation de variable.
-Cette directive ne doit être utilisée que si votre serveur LDAP +
Cette directive ne doit être utilisée que si votre serveur LDAP
n'autorise pas les recherches anonymes, ou si vous ne pouvez pas
- utiliser de nom d'utilisateur dédié via la directive
Cette directive permet de définir un DN optionnel pour se
- connecter au serveur afin d'y rechercher des entrées. Si aucun DN
- n'est spécifié,
Cette directive permet de définir un DN optionnel pour se
+ connecter au serveur afin d'y rechercher des entrées. Si aucun DN
+ n'est spécifié,
Cette directive permet de spécifier un mot de passe à utiliser en +
Cette directive permet de spécifier un mot de passe à utiliser en
conjonction avec le DN de connexion. Notez que ce mot de passe
- constitue en général une donnée sensible, et doit donc être protégé
- de manière appropriée. Vous ne devez utiliser les directives
+ constitue en général une donnée sensible, et doit donc être protégé
+ de manière appropriée. Vous ne devez utiliser les directives
Si la valeur spécifiée débute par "exec:", la commande qui suit sera - exécutée, et la première ligne renvoyée par la commande sur la - sortie standard sera utilisée comme mot de passe.
+Si la valeur spécifiée débute par "exec:", la commande qui suit sera + exécutée, et la première ligne renvoyée par la commande sur la + sortie standard sera utilisée comme mot de passe.
La directive charset.conv
fourni qui associe les extensions de
- langage courantes à leurs jeux de caractères.
Le fichier contient des lignes au format suivant :
L'extension est insensible à la casse. Les lignes vides et les
- lignes commençant par un dièse (#
) sont ignorées.
L'extension est insensible à la casse. Les lignes vides et les
+ lignes commençant par un dièse (#
) sont ignorées.
Lorsque cette directive est définie, et si
-
Lorsque cette directive est définie, et si
+
Les vérifications d'autorisation ldap-attribute, +
Les vérifications d'autorisation ldap-attribute, ldap-user, et ldap-group (niveau simple seulement) utilisent des comparaisons.
-Cette directive n'a d'effet sur les comparaisons effectuées au - cours des traitements de groupe imbriqués, et lorsque la directive +
Cette directive n'a d'effet sur les comparaisons effectuées au
+ cours des traitements de groupe imbriqués, et lorsque la directive
Cette directive ne doit être utilisée que si votre serveur LDAP +
Cette directive ne doit être utilisée que si votre serveur LDAP
n'autorise pas les recherches anonymes, ou si vous ne pouvez pas
- utiliser de nom d'utilisateur dédié via la directive
Lorsque cette directive est définie à on, +
Lorsque cette directive est définie à on,
Require dn
, puis extraire ce DN et le
- comparer avec le DN extrait de l'entrée de l'utilisateur. Si cette
- directive est à off,
Cette directive permet de spécifier à quel moment
-
Cette directive permet de spécifier à quel moment
+ always
.
Cette directive permet de spécifier quel attribut LDAP est - utilisé pour vérifier l'appartenance d'un utilisateur à un - groupe. On peut spécifier plusieurs attributs en répétant cette - directive plusieurs fois. Si la directive n'est pas définie, +
Cette directive permet de spécifier quel attribut LDAP est
+ utilisé pour vérifier l'appartenance d'un utilisateur à un
+ groupe. On peut spécifier plusieurs attributs en répétant cette
+ directive plusieurs fois. Si la directive n'est pas définie,
member
et uniquemember
.
Lorsqu'elle est définie à on
, cette directive
- indique que c'est le DN de l'utilisateur qui doit être utilisé pour
- vérifier son appartenance à un groupe. Dans le cas contraire, c'est
- le nom de l'utilisateur qui sera utilisé. Par exemple, supposons que
+
Lorsqu'elle est définie à on
, cette directive
+ indique que c'est le DN de l'utilisateur qui doit être utilisé pour
+ vérifier son appartenance à un groupe. Dans le cas contraire, c'est
+ le nom de l'utilisateur qui sera utilisé. Par exemple, supposons que
le client envoie le nom d'utilisateur bjenson
, qui
correspond au DN LDAP cn=Babs Jenson,o=Example
. Si la
- directive est à on
, cn=Babs Jenson, o=Example
est un membre du
+ directive est à on
, cn=Babs Jenson, o=Example
est un membre du
groupe. Dans le cas contraire, bjenson
est un membre du groupe.
bjenson
est un membre du groupe.
Lorsque cette directive est définie à une valeur X
+
Lorsque cette directive est définie à une valeur X
non nulle, en combinaison avec l'utilisation de la directive
- Require ldap-group DN-groupe
, les données de connexion
- fournies seront utilisées pour vérifier l'appartenance de
- l'utilisateur à l'objet de l'annuaire DN-groupe
ou à
+ Require ldap-group DN-groupe
, les données de connexion
+ fournies seront utilisées pour vérifier l'appartenance de
+ l'utilisateur à l'objet de l'annuaire DN-groupe
ou Ã
tout sous-groupe du groupe courant en tenant compte de la profondeur
- d'imbrication maximale X
spécifiée par la directive.
Se référer à la section Require
- ldap-group
pour un exemple plus détaillé.
X
spécifiée par la directive.
+ Se référer à la section Require
+ ldap-group
pour un exemple plus détaillé.
Lorsque les directives
Lorsque cette directive est définie, la variable d'environnement
- REMOTE_USER
sera définie à la valeur de l'attribut
- spécifié. Assurez-vous que cet attribut soit bien inclus dans la
- liste d'attributs spécifiés dans la définition de AuthLDAPUrl ; dans
+
Lorsque cette directive est définie, la variable d'environnement
+ REMOTE_USER
sera définie à la valeur de l'attribut
+ spécifié. Assurez-vous que cet attribut soit bien inclus dans la
+ liste d'attributs spécifiés dans la définition de AuthLDAPUrl ; dans
le cas contraire, cette directive n'aurait aucun effet. Si elle est
- présente, cette directive l'emporte sur AuthLDAPRemoteUserIsDN. Elle
- peut s'avérer utile par exemple, si vous souhaitez que les
- utilisateurs se connectent à un site web en utilisant leur adresse
- email, alors qu'une application sous-jacente nécessite un nom
+ présente, cette directive l'emporte sur
Lorsque cette directive est à on, la variable d'environnement
- REMOTE_USER
sera définie avec la valeur du DN complet
- de l'utilisateur authentifié, et non plus avec simplement le nom
- d'utilisateur fourni par le client. Elle est définie à off par
- défaut.
Lorsque cette directive est à on, la variable d'environnement
+ REMOTE_USER
sera définie avec la valeur du DN complet
+ de l'utilisateur authentifié, et non plus avec simplement le nom
+ d'utilisateur fourni par le client. Elle est définie à off par
+ défaut.
Lorsque cette directive est définie, et si
-
Les vérifications d'autorisation ldap-filter et +
Lorsque cette directive est définie, et si
+
Les vérifications d'autorisation ldap-filter et ldap-dn utilisent des recherches.
-Cette directive n'a d'effet sur les comparaisons effectuées au - cours des traitements de groupe imbriqués, et lorsque la directive +
Cette directive n'a d'effet sur les comparaisons effectuées au
+ cours des traitements de groupe imbriqués, et lorsque la directive
Cette directive ne doit être utilisée que si votre serveur LDAP +
Cette directive ne doit être utilisée que si votre serveur LDAP
n'autorise pas les recherches anonymes, ou si vous ne pouvez pas
- utiliser de nom d'utilisateur dédié via la directive
Un objet groupe LDAP peut contenir des membres qui sont des
- utilisateurs et des membres qui sont eux-mêmes des groupes (appelés
- sous-groupes ou groupes imbriqués). La directive
- AuthLDAPSubGroupAttribute
spécifie l'attribut utilisé
+ utilisateurs et des membres qui sont eux-mêmes des groupes (appelés
+ sous-groupes ou groupes imbriqués). La directive
+ AuthLDAPGroupAttribute
spécifie l'attribut utilisé
- pour identifier les utilisateurs. On peut spécifier plusieurs
- attributs en répétant la directive plusieurs fois. Si elle n'est pas
- définie, member
et uniqueMember
.
member
et uniqueMember
.
Un objet groupe LDAP peut contenir des membres qui sont des
- utilisateurs et des membres qui sont eux-mêmes des groupes (appelés
- sous-groupes ou groupes imbriqués). La directive
- AuthLDAPSubGroupAttribute
permet d'identifier les
- membres qui sont des sous-groupes du groupe courant (à l'opposé des
+ utilisateurs et des membres qui sont eux-mêmes des groupes (appelés
+ sous-groupes ou groupes imbriqués). La directive
+ AuthLDAPSubGroupClass
permet de spécifier les valeurs
- d'objectClass LDAP utilisées pour vérifier que certains membres sont
- en fait des objets groupe. Les sous-groupes ainsi identifiés peuvent
+ groupOfNames
et groupOfUniqueNames
.
Une URL conforme à la RFC 2255 qui permet de spécifier les - paramètres à utiliser pour la recherche dans l'annuaire LDAP. La +
Une URL conforme à la RFC 2255 qui permet de spécifier les + paramètres à utiliser pour la recherche dans l'annuaire LDAP. La syntaxe de l'URL est :
-Si vous souhaitez mettre à la disposition d'Apache plusieurs URLs
+
Si vous souhaitez mettre à la disposition d'Apache plusieurs URLs LDAP, la syntaxe sera :
-Mise en garde : Si vous spécifiez plusieurs
+ Mise en garde : Si vous spécifiez plusieurs
serveurs, vous devez en entourer la liste avec des guillemets ; dans le
-cas contraire, vous générerez une erreur : "AuthLDAPURL takes one
+cas contraire, vous générerez une erreur : "AuthLDAPURL takes one
argument, URL to define LDAP connection..". Vous pouvez bien
-entendu ajouter des paramètres de recherche à chacun des serveurs
-spécifiés.
ldap
. Pour ldap sécurisé, utilisez à la place la
- chaîne ldaps
. LDAP sécurisé n'est disponible que si
- Apache a été lié avec une bibliothèque LDAP supportant SSL.ldap
. Pour ldap sécurisé, utilisez à la place la
+ chaîne ldaps
. LDAP sécurisé n'est disponible que si
+ Apache a été lié avec une bibliothèque LDAP supportant SSL.Il s'agit du nom/port du serveur ldap
- (dont la valeur par défaut est
+ (dont la valeur par défaut est
localhost:389
pour ldap
, et
localhost:636
pour ldaps
). Pour
- spécifier plusieurs serveurs LDAP redondants, indiquez
- simplement leur liste en les séparant par des espaces.
+ spécifier plusieurs serveurs LDAP redondants, indiquez
+ simplement leur liste en les séparant par des espaces.
lorsqu'une connection a été établie avec un serveur, elle
- reste active pendant toute la durée de vie du processus
-
lorsqu'une connection a été établie avec un serveur, elle
+ reste active pendant toute la durée de vie du processus
+
Si le serveur LDAP cesse de fonctionner, et ainsi
interrompt une
connexion existante,
uid
. Il est judicieux de choisir un
- attribut dont la valeur sera unique parmi toutes les entrées de
- la branche de l'annuaire que vous aurez définie. Tous les
- attributs spécifiés seront enregistrés dans des variables
- d'environnement avec le préfixe AUTHENTICATE_, afin de pouvoir
- être utilisés par d'autres modules.uid
. Il est judicieux de choisir un
+ attribut dont la valeur sera unique parmi toutes les entrées de
+ la branche de l'annuaire que vous aurez définie. Tous les
+ attributs spécifiés seront enregistrés dans des variables
+ d'environnement avec le préfixe AUTHENTICATE_, afin de pouvoir
+ être utilisés par d'autres modules.one
ou sub
. Notez que la
- RFC 2255 supporte aussi une portée de valeur base
,
- mais cette dernière n'est pas supportée par le module. Si la
- portée n'est pas définie, ou si elle est définie à
- base
, c'est la valeur de portée par défaut
- sub
qui sera utilisée.base
,
+ mais cette dernière n'est pas supportée par le module. Si la
+ portée n'est pas définie, ou si elle est définie Ã
+ base
, c'est la valeur de portée par défaut
+ sub
qui sera utilisée.(objectClass=*)
sera utilisé, ce qui corrspond à
+ filtre n'est spécifié, le filtre par défaut
+ (objectClass=*)
sera utilisé, ce qui corrspond Ã
une recherche de tous les types d'objets de l'arborescence. La
- taille des filtres est limitée à environ 8000 caractères (valeur
+ taille des filtres est limitée à environ 8000 caractères (valeur
de la macro MAX_STRING_LEN
dans le code source
- d'Apache), ce qui s'avère plus que suffisant pour la plupart des
+ d'Apache), ce qui s'avère plus que suffisant pour la plupart des
applications. Depuis la version 2.4.10, il est possible
- d'utiliser le paramètre "none" pour spécifier qu'aucun filtre
- n'est activé ; ce paramètre est obligatoire avec certains
+ d'utiliser le paramètre none
pour spécifier qu'aucun filtre
+ n'est activé ; ce paramètre est obligatoire avec certains
serveurs LDAP primitifs.Pour une recherche, les attribut, filtre et nom d'utilisateur
- fournis par le client HTTP sont combinés pour créer un filtre de
+ fournis par le client HTTP sont combinés pour créer un filtre de
recherche du style :
(&(filtre)(attribut
=nom-utilisateur))
.
Par exemple, considérons l'URL +
Par exemple, considérons l'URL
ldap://ldap.example.com/o=Example?cn?sub?(posixid=*)
.
Lorsqu'un client tentera de se connecter en utilisant le nom
d'utilisateur Babs Jenson
, le filtre de recherche sera
: (&(posixid=*)(cn=Babs Jenson))
.
On peut encore ajouter un paramètre optionnel pour permettre à - l'URL LDAP de surcharger le type de connexion. Ce paramètre peut +
On peut encore ajouter un paramètre optionnel pour permettre à + l'URL LDAP de surcharger le type de connexion. Ce paramètre peut prendre l'une des valeurs suivantes :
ldap://
sur le port
+ ldap://
sur le port
389.ldaps://
.ldaps://
.Voir plus haut pour des exemples d'URLs définies par la directive
-
Voir plus haut pour des exemples d'URLs définies par la directive
+
Ce module fournit des directives permettant de contrôler et - modifier les en-têtes de requêtes et de réponses HTTP. Les en-têtes - peuvent être fusionnés, remplacés ou supprimés.
+Ce module fournit des directives permettant de contrôler et + modifier les en-têtes de requêtes et de réponses HTTP. Les en-têtes + peuvent être fusionnés, remplacés ou supprimés.
Les directives fournies par
La chronologie du traitement est importante et est affectée par +
La chronologie du traitement est importante et est affectée par l'ordre d'apparition des directives dans le fichier de configuration et par leur placement dans les sections de configuration. Ainsi, - ces deux directives ont un effet différent si leur ordre est inversé + ces deux directives ont un effet différent si leur ordre est inversé :
Dans cet ordre, l'en-tête MirrorID
n'est pas défini.
- Si l'ordre des directives était inversé, l'en-tête
- MirrorID
serait défini à "mirror 12".
Dans cet ordre, l'en-tête MirrorID
n'est pas défini.
+ Si l'ordre des directives était inversé, l'en-tête
+ MirrorID
serait défini à "mirror 12".
Le mode précoce a été conçu à des fins d'aide aux tests et au
- débogage pour les développeurs. Les directives définies en utilisant
- le mot-clé early
sont censées agir au tout début du
- traitement de la requête. Cela signifie que l'on peut les utiliser
- pour simuler différentes requêtes et définir des situations de test,
- tout en gardant à l'esprit que les en-têtes peuvent être modifiés à
- tout moment par d'autres modules avant que le réponse ne soit
- générée.
Comme les directives précoces sont traitées avant que le - chemin de la requête ne soit parcouru, les en-têtes - précoces ne peuvent être définis que dans un contexte de serveur - principal ou de serveur virtuel. Les directives précoces ne peuvent - pas dépendre d'un chemin de requête, si bien qu'elles échoueront +
Le mode précoce a été conçu à des fins d'aide aux tests et au
+ débogage pour les développeurs. Les directives définies en utilisant
+ le mot-clé early
sont censées agir au tout début du
+ traitement de la requête. Cela signifie que l'on peut les utiliser
+ pour simuler différentes requêtes et définir des situations de test,
+ tout en gardant à l'esprit que les en-têtes peuvent être modifiés Ã
+ tout moment par d'autres modules avant que le réponse ne soit
+ générée.
Comme les directives précoces sont traitées avant que le
+ chemin de la requête ne soit parcouru, les en-têtes
+ précoces ne peuvent être définis que dans un contexte de serveur
+ principal ou de serveur virtuel. Les directives précoces ne peuvent
+ pas dépendre d'un chemin de requête, si bien qu'elles échoueront
dans des contextes tels que
mon-en-tête
, qui
- contient un horodatage permettant de déterminer le moment où la
- requête a été reçue, et le temps qui s'est écoulé jusqu'à ce que
- la requête ait commencé à être servie. Cet en-tête peut être
- utilisé par le client pour estimer la charge du serveur ou
- isoler les goulets d'étranglement entre le client et le
+ Ajoute à la réponse un en-tête, mon-en-tête
, qui
+ contient un horodatage permettant de déterminer le moment où la
+ requête a été reçue, et le temps qui s'est écoulé jusqu'à ce que
+ la requête ait commencé à être servie. Cet en-tête peut être
+ utilisé par le client pour estimer la charge du serveur ou
+ isoler les goulets d'étranglement entre le client et le
serveur.
le résultat est l'ajout à la réponse d'un en-tête du type :
+le résultat est l'ajout à la réponse d'un en-tête du type :
le résultat est l'ajout à la réponse d'un en-tête du type :
+le résultat est l'ajout à la réponse d'un en-tête du type :
mon-en-tête
à la réponse si et
- seulement si l'en-tête mon-en-tête-requête
est
- présent dans la requête. Ceci peut s'avérer utile pour générer
- des en-têtes de réponse "à la tête du client". Notez que cet
- exemple nécessite les services du module
+ Ajoute l'en-tête mon-en-tête
à la réponse si et
+ seulement si l'en-tête mon-en-tête-requête
est
+ présent dans la requête. Ceci peut s'avérer utile pour générer
+ des en-têtes de réponse "à la tête du client". Notez que cet
+ exemple nécessite les services du module
Si l'en-tête mon-en-tête-requête: mavaleur
est
- présent dans la requête HTTP, la réponse contiendra un en-tête
+
Si l'en-tête mon-en-tête-requête: mavaleur
est
+ présent dans la requête HTTP, la réponse contiendra un en-tête
du type :
CGI
,
NO_CACHE
et NO_STORE
existent pour la
- requête) :
+ requête) :
alors, la réponse contiendra l'en-tête suivant :
+alors, la réponse contiendra l'en-tête suivant :
Si append
avait été utilisé à la place de
- merge
, la réponse aurait contenu l'en-tête suivant
+
Si append
avait été utilisé à la place de
+ merge
, la réponse aurait contenu l'en-tête suivant
:
Cette directive permet de remplacer, fusionner, modifier ou - supprimer des en-têtes de requête HTTP. L'en-tête est modifié juste - avant que le gestionnaire de contenu ne s'exécute, ce qui permet la - modification des en-têtes entrants. L'action effectuée est - déterminée par le premier argument. Ce dernier accepte les valeurs + supprimer des en-têtes de requête HTTP. L'en-tête est modifié juste + avant que le gestionnaire de contenu ne s'exécute, ce qui permet la + modification des en-têtes entrants. L'action effectuée est + déterminée par le premier argument. Ce dernier accepte les valeurs suivantes :
add
set
, append
ou merge
.append
edit
edit*
edit
, la chaîne de l'en-tête correspondant au modèle ne
- sera recherchée et remplacée qu'une seule fois, alors qu'avec
+ l'argument remplacement une chaîne de caractères de
+ remplacement qui peut contenir des références
+ arrières ou des spécificateurs de format. Avec
+ edit
, la chaîne de l'en-tête correspondant au modèle ne
+ sera recherchée et remplacée qu'une seule fois, alors qu'avec
edit*
, elle le sera pour chacune de ses instances si
- elle apparaît plusieurs fois.merge
set
setifempty
unset
Cet argument est suivi d'un nom d'en-tête qui peut se terminer
- par un caractère ':', mais ce n'est pas obligatoire. La casse est
- ignorée. Avec set
, append
,
+
Cet argument est suivi d'un nom d'en-tête qui peut se terminer
+ par un caractère ':', mais ce n'est pas obligatoire. La casse est
+ ignorée. Avec set
, append
,
merge
et add
, une valeur est
- fournie en troisième argument. Si une valeur contient des
- espaces, elle doit être entourée de guillemets. Avec
- unset
, aucune valeur ne doit apparaître.
- valeur peut être une chaîne de caractères, une chaîne
- contenant des spécificateurs de format, ou une combinaison des deux.
- Les spécificateurs de format supportés sont les mêmes que ceux de la
- directive unset
, aucune valeur ne doit apparaître.
+ valeur peut être une chaîne de caractères, une chaîne
+ contenant des spécificateurs de format, ou une combinaison des deux.
+ Les spécificateurs de format supportés sont les mêmes que ceux de la
+ directive edit
, les deux arguments valeur et
remplacement sont obligatoires, et correspondent
- respectivement à une
La directive
La directive
early
env=[!]variable
variable
existe. Un !
devant
variable
inverse le test, et la directive ne
- s'appliquera alors que si variable
n'est pas définie.variable
n'est pas définie.
expr=expression
Excepté le cas du mode précoce, la directive
-
Excepté le cas du mode précoce, la directive
+
Cette directive permet de remplacer, fusionner, ou - supprimer des en-têtes de réponse HTTP. L'en-tête est modifié juste - après que le gestionnaire de contenu et les filtres en sortie ne - s'exécutent, ce qui permet la modification des en-têtes + supprimer des en-têtes de réponse HTTP. L'en-tête est modifié juste + après que le gestionnaire de contenu et les filtres en sortie ne + s'exécutent, ce qui permet la modification des en-têtes sortants.
-L'argument optionnel condition permet de déterminer - sur quelle table interne d'en-têtes de réponses cette directive va - opérer. En dépit du nom, la valeur par défaut de +
L'argument optionnel condition permet de déterminer
+ sur quelle table interne d'en-têtes de réponses cette directive va
+ opérer. En dépit du nom, la valeur par défaut de
onsuccess
ne limite pas une action
- aux réponses avec un code d'état de 2xx. Les en-têtes définis sous
- cette condition sont encore utilisés quand par exemple une requête
- est mandatée ou générée par un programme CGI avec succès,
- et ceci même dans le cas où ils ont généré un code d'échec.
Lorsque votre action est une fonction agissant sur un en-tête - existant, vous pourrez être amené à spécifier une condition +
Lorsque votre action est une fonction agissant sur un en-tête
+ existant, vous pourrez être amené à spécifier une condition
always
, en fonction de la table interne dans laquelle
- l'en-tête original a été défini. La table qui correspond à
- always
est utilisée pour les réponses d'erreur générées
- localement ainsi que pour les réponses qui ont abouti.
- Notez aussi que la répétition
- de cette directive avec les deux conditions peut être pertinente
- dans certains scénarios, car always
n'englobe pas
- onsuccess
en ce qui concerne les en-têtes existants :
always
est utilisée pour les réponses d'erreur générées
+ localement ainsi que pour les réponses qui ont abouti.
+ Notez aussi que la répétition
+ de cette directive avec les deux conditions peut être pertinente
+ dans certains scénarios, car always
n'englobe pas
+ onsuccess
en ce qui concerne les en-têtes existants :
always
est utilisée dans la réponse
- définitive.always
est utilisée dans la réponse
+ définitive.always
et non dans la table par
- défaut.onsuccess
.always
et non dans la table par
+ défaut.
+ onsuccess
.Outre le paramètre condition décrit ci-dessus, vous - pouvez limiter une action en fonction de codes d'état HTTP, par - exemple pour les requêtes mandatées ou générées par un programme +
Outre le paramètre condition décrit ci-dessus, vous + pouvez limiter une action en fonction de codes d'état HTTP, par + exemple pour les requêtes mandatées ou générées par un programme CGI. Voir l'exemple qui utilise %{REQUEST_STATUS} dans la section ci-dessus.
-L'action que cette directive provoque est déterminée par le +
L'action que cette directive provoque est déterminée par le premier argument (ou par le second argument si une - condition est spécifiée). Il peut prendre + condition est spécifiée). Il peut prendre une des valeurs suivantes :
add
set
, append
ou merge
.append
echo
edit
edit*
edit
n'effectuera une
+ l'argument remplacement une chaîne de caractères de
+ remplacement qui peut contenir des références
+ arrières ou des spécificateurs de format. La forme edit
n'effectuera une
recherche/remplacement qu'une seule fois dans la valeur de
- l'en-tête, alors que la forme edit*
en effectuera autant
- que le nombre d'apparition de la chaîne à remplacer.edit*
en effectuera autant
+ que le nombre d'apparition de la chaîne à remplacer.merge
set
setifempty
unset
note
Cet argument est suivi d'un nom d'en-tête qui peut se
- terminer par un caractère ':', mais ce n'est pas obligatoire. La
- casse est ignorée avec set
, append
,
+
Cet argument est suivi d'un nom d'en-tête qui peut se
+ terminer par un caractère ':', mais ce n'est pas obligatoire. La
+ casse est ignorée avec set
, append
,
merge
, add
, unset
et
- edit
. Le nom d'en-tête est sensible à la
- casse pour echo
et peut être une echo
et peut être une
Avec set
, append
, merge
et
- add
, une valeur est spécifiée comme
+ add
, une valeur est spécifiée comme
argument suivant. Si valeur contient des espaces, elle
- doit être entourée de guillemets. valeur peut être une
- chaîne de caractères, une chaîne contenant des spécificateurs de
- format propres à
valeur supporte les spécificateurs de format suivants :
+valeur supporte les spécificateurs de format suivants :
Format | Description | |
---|---|---|
%% |
- Le caractère pourcentage | Le caractère pourcentage |
%t |
- Le moment de réception de la requête en temps - universel coordonné depuis le temps epoch (Jan. 1, 1970) et - exprimé en microsecondes. La valeur est précédée de + | Le moment de réception de la requête en temps
+ universel coordonné depuis le temps epoch (Jan. 1, 1970) et
+ exprimé en microsecondes. La valeur est précédée de
t= . |
%D |
- Le temps écoulé entre la réception de la requête et l'envoi
- des en-têtes sur le réseau. Il s'agit de la durée de traitement
- de la requête. La valeur est précédée de D= . La
- valeur est exprimée en microsecondes. | Le temps écoulé entre la réception de la requête et l'envoi
+ des en-têtes sur le réseau. Il s'agit de la durée de traitement
+ de la requête. La valeur est précédée de D= . La
+ valeur est exprimée en microsecondes. |
%l |
La charge moyenne courante du serveur proprement dit. Ce
sont les valeurs obtenues par getloadavg() qui
- représentent la charge moyenne courante, sur 5 minutes et sur 15
- minutes. Chaque valeur est précédée de l= et
- séparée de la suivante par un / .+ représentent la charge moyenne courante, sur 5 minutes et sur 15 + minutes. Chaque valeur est précédée de l= et
+ séparée de la suivante par un / .Disponible depuis la version 2.4.4 du serveur HTTP Apache. | |
%i |
- Le pourcentage courant de httpd au repos (de 0 à 100) + | Le pourcentage courant de httpd au repos (de 0 Ã 100)
en se basant sur le nombre de processus et threads disponibles.
- La valeur est précédée de i= .+ La valeur est précédée de i= .Disponible depuis la version 2.4.4 du serveur HTTP Apache. |
%b |
- Le pourcentage courant de httpd utilisé (de 0 à 100) + | Le pourcentage courant de httpd utilisé (de 0 à 100)
en se basant sur le nombre de processus et threads disponibles.
- La valeur est précédée de b= .+ La valeur est précédée de b= .Disponible depuis la version 2.4.4 du serveur HTTP Apache. |
%{NOM_VARIABLE}s |
Le contenu de la variable
d'environnement SSL NOM_VARIABLE , si
- |
Le spécificateur de format %s
est disponible
- depuis la version 2.1 d'Apache ; il peut être utilisé à la place
- de %e
pour éviter de devoir spécifier
+
Le spécificateur de format %s
est disponible
+ depuis la version 2.1 d'Apache ; il peut être utilisé à la place
+ de %e
pour éviter de devoir spécifier
SSLOptions +StdEnvVars
. Cependant, si
- SSLOptions +StdEnvVars
doit tout de même être
- spécifié pour une raison quelconque, %e
sera plus
+ SSLOptions +StdEnvVars
doit tout de même être
+ spécifié pour une raison quelconque, %e
sera plus
efficace que %s
.
Lorsque le paramètre valeur utilise l'interpréteur Lorsque le paramètre valeur utilise l'interpréteur ap_expr, certaines syntaxes d'expressions
- seront différentes des exemples qui évaluent des expressions
- booléennes telles que <If> :
edit
nécessite les deux arguments
+
edit
nécessite les deux arguments
valeur, qui est une
La directive
La directive
early
env=[!]variable
variable
existe. Un !
devant
variable
inverse le test, et la directive ne
- s'appliquera alors que si variable
n'est pas définie.variable
n'est pas définie.
expr=expression
Excepté le cas du mode précoce, les
- directives
Excepté le cas du mode précoce, les
+ directives
Ce module permet d'utiliser des macros dans les fichiers de - configuration à l'exécution du serveur HTTP Apache afin de faciliter - la création de nombreux blocs de configuration similaires. Quand le - serveur démarre, les macros sont exécutées avec les paramètres - fournis, et le résultat obtenu est traité au même titre que le reste + configuration à l'exécution du serveur HTTP Apache afin de faciliter + la création de nombreux blocs de configuration similaires. Quand le + serveur démarre, les macros sont exécutées avec les paramètres + fournis, et le résultat obtenu est traité au même titre que le reste du fichier de configuration.
On définit une macro à l'aide des blocs
Par exemple, vous pouvez utiliser une macro pour définir un bloc
-
Par exemple, vous pouvez utiliser une macro pour définir un bloc
+
Comme les directives de configuration httpd, les noms des macros sont -insensibles à la casse, à la différence des variables qui y sont, elles, +insensibles à la casse, à la différence des variables qui y sont, elles, sensibles.
Vous pouvez alors invoquer cette macro autant de fois que vous le -voulez pour créer des serveurs virtuels
+voulez pour créer des serveurs virtuelsAu démarrage du serveur, chacune de ces invocations
-
Au démarrage du serveur, chacune de ces invocations
+
La directive
La directive
Vous trouverez une version plus élaborée de cet exemple plus loin +
Vous trouverez une version plus élaborée de cet exemple plus loin dans la section Exemples.
Les noms de paramètres doivent commencer par un sigil tel que
-$
, %
, ou @
, de façon à ce qu'ils
+
Les noms de paramètres doivent commencer par un sigil tel que
+$
, %
, ou @
, de façon à ce qu'ils
soient clairement identifiables, mais aussi afin de faciliter les
interactions avec les autres directives, comme la directive de base
Les paramètres préfixés par $
ou %
ne sont
-pas échappés. Les paramètres préfixés par @
sont échappés
+
Les paramètres préfixés par $
ou %
ne sont
+pas échappés. Les paramètres préfixés par @
sont échappés
entre guillemets.
Evitez de préfixer un paramètre par le nom d'un autre paramètre (par
-exemple, présence simultanée des paramètres $win
et
+
Evitez de préfixer un paramètre par le nom d'un autre paramètre (par
+exemple, présence simultanée des paramètres $win
et
$winter
), car ceci peut introduire de la confusion lors de
-l'évaluation des expressions. Si cela se produit, c'est le nom de
-paramètre le plus long possible qui sera utilisé.
Si vous désirez insérer une valeur dans une chaîne, il est conseillé -de l'entourer d'accolades afin d'éviter toute confusion :
+Si vous désirez insérer une valeur dans une chaîne, il est conseillé +de l'entourer d'accolades afin d'éviter toute confusion :
Un exemple typique d'utilisation de
Il est recommandé de supprimer la définition d'une macro après -l'avoir utilisée. Ceci permet d'éviter les confusions au sein d'un -fichier de configuration complexe où des conflits entre noms de +
Il est recommandé de supprimer la définition d'une macro après +l'avoir utilisée. Ceci permet d'éviter les confusions au sein d'un +fichier de configuration complexe où des conflits entre noms de variables peuvent survenir.
La directive
La directive $%@
', et d'éviter d'en faire
- de même avec les noms de macros.
+ de la macro, et les arguments suivants sont les paramètres. Il
+ est de bon aloi de préfixer les noms des paramètres d'une macro
+ avec un caractère parmi '$%@
', et d'éviter d'en faire
+ de même avec les noms de macros.
La directive
est équivalent, avec les macros définies ci-dessus à :
+est équivalent, avec les macros définies ci-dessus à :
La directive
La directive
Ce document est un complément à la Documentation de référence de
-
Ce document est un complément à la Documentation de référence de
+
mod_rewrite doit être considéré comme un dernier recours, +
Vous devez vous attacher à comprendre le +
Vous devez vous attacher à comprendre le fonctionnement des exemples, car la plupart d'entre eux ne -fonctionneront pas sur votre système si vous vous contentez de les +fonctionneront pas sur votre système si vous vous contentez de les copier/coller dans vos fichiers de configuration.
Le cas le plus courant dans lequel
RedirectMatch
, vous pouvez inclure une expression
-rationnelle dans votre critère de redirection, ce qui vous permet de
-bénéficier de nombreux avantages de la directive
+rationnelle dans votre critère de redirection, ce qui vous permet de
+bénéficier de nombreux avantages de la directive
RewriteRule
.
Une utilisation courante de la directive RewriteRule
est
la redirection de toute une classe d'URLs. Par exemple, toutes les URLs
-faisant référence au répertoire /un
doivent être
-redirigées vers http://un.example.com/
, ou toutes les
-requêtes http
doivent être redirigées vers
+faisant référence au répertoire /un
doivent être
+redirigées vers http://un.example.com/
, ou toutes les
+requêtes http
doivent être redirigées vers
https
.
Pour ce faire, il est préférable d'utiliser la directive +
Pour ce faire, il est préférable d'utiliser la directive
Redirect
. Souvenez-vous que la directive
Redirect
conserve les informations relatives au chemin. En
d'autres termes, la redirection d'une URL /un
va aussi
-rediriger toutes les URLs de niveaux inférieurs comme
+rediriger toutes les URLs de niveaux inférieurs comme
/un/deux.html
et /un/trois/quatre.html
.
Pour rediriger les URLs sous /un
vers
-http://un.example.com/
, utilisez cette définition :
http://un.example.com/
, utilisez cette définition :
-Pour rediriger un nom d'hôte vers un autre nom d'hôte, par exemple +
Pour rediriger un nom d'hôte vers un autre nom d'hôte, par exemple
example.com
vers www.example.com
, voir la
-méthode Noms d'hôtes canoniques.
Pour rediriger les URLs http
vers https
,
-utilisez cette définition :
L'utilisation de la directive RewriteRule
pour accomplir
-cette tâche peut se justifier s'il existe d'autres directives
-RewriteRule
dans la même portée. En effet, lorsque des
+cette tâche peut se justifier s'il existe d'autres directives
+RewriteRule
dans la même portée. En effet, lorsque des
directives Redirect
et RewriteRule
se trouvent
-dans la même portée, les directives RewriteRule
sont
-exécutées en premier, sans tenir compte de leur ordre d'apparition dans
+dans la même portée, les directives RewriteRule
sont
+exécutées en premier, sans tenir compte de leur ordre d'apparition dans
le fichier de configuration.
Dans le cas de la redirection http-vers-https, l'utilisation
-de règles RewriteRule
se justifie si vous n'avez pas accès
+de règles RewriteRule
se justifie si vous n'avez pas accès
au fichier de configuration principal, et devez donc accomplir cette
-tâche au sein d'un fichier .htaccess
.
.htaccess
.
La directive mod_rewrite
, il est préférable d'utiliser la directive
-Alias
pour des raisons de simplicité et de performances.
-Pour effectuer cette mise en correspondance, mod_rewrite
-s'impose si vous n'avez pas accès aux fichiers de configuration du
-serveur. En effet, la directive Alias ne peut pas être utilisée dans un
+Pour effectuer cette mise en correspondance, .htaccess
, mais seulement dans un contexte de
serveur principal ou de serveur virtuel.
En outre, vous pouvez arriver au même résultat avec les liens
-symboliques, pourvu que Options FollowSymLinks
soit activé
+
En outre, vous pouvez arriver au même résultat avec les liens
+symboliques, pourvu que Options FollowSymLinks
soit activé
sur votre serveur.
Bien qu'il soit possible de gérer les serveurs
-virtuels avec mod_rewrite, il s'agit rarement de la bonne méthode.
-Il est pratiquement toujours préférable de créer des blocs
-<VirtualHost> individuels. Dans l'éventualité où vous devez gérer
+ Bien qu'il soit possible de gérer les serveurs
+virtuels avec mod_rewrite, il s'agit rarement de la bonne méthode.
+Il est pratiquement toujours préférable de créer des blocs
+ Il est aussi possible d'utiliser des modules comme
L'utilisation de
L'utilisation de .htaccess
.
Voir le document création de serveurs virtuels -avec mod_rewrite pour plus de détails sur la manière d'y parvenir si -cela semble être tout de même la meilleure approche.
+Voir le document création de serveurs virtuels +avec mod_rewrite pour plus de détails sur la manière d'y parvenir si +cela semble être tout de même la meilleure approche.
La directive RewriteRule
fournit le drapeau La directive
Cependant, dans les nombreux cas où aucune correspondance au modèle
-n'est vraiment nécessaire, comme dans l'exemple ci-dessus, il est
-préférable d'utiliser la directive
Cependant, dans les nombreux cas où aucune correspondance au modèle
+n'est vraiment nécessaire, comme dans l'exemple ci-dessus, il est
+préférable d'utiliser la directive
Vous devrez cependant tout de même utiliser RewriteRule
-lorsque d'autres RewriteRule
s se trouvent dans la même portée,
-car elles agissent en général avant les directives
+
Vous devrez cependant tout de même utiliser RewriteRule
+lorsque d'autres RewriteRule
s se trouvent dans la même portée,
+car elles agissent en général avant les directives
ProxyPass
, et peuvent ainsi les court-circuiter.
Considérons par exemple le scénario courant où la directive
-www.example.com
au lieu de
-example.com
. Il est possible d'utiliser à la place la
+
Considérons par exemple le scénario courant où la directive
+www.example.com
au lieu de
+example.com
. Il est possible d'utiliser à la place la
directive
On peut utiliser cette technique dans de nombreux scénarios courant +
On peut utiliser cette technique dans de nombreux scénarios courant
pour remplacer
Voir en particulier la documentation sur
-l'évaluation des expressions pour une vue d'ensemble des types
-d'expressions que vous pouvez utiliser dans les sections <If>,
+l'évaluation des expressions pour une vue d'ensemble des types
+d'expressions que vous pouvez utiliser dans les sections