From: Lucien Gentis Les directives fournies par ce module permettent de manipuler et
- de contrôler les URLs à l'arrivée des requêtes sur le serveur. Les
+ de contrôler les URLs à l'arrivée des requêtes sur le serveur. Les
directives Les directives
Lorsque les directives
Les alias et redirections apparaissant dans différents contextes
- sont traités comme les autres directives en respectant les règles de fusion standards. Par
- contre, ils sont traités selon une chronologie particulière
- lorsqu'ils apparaissent dans le même contexte (par exemple, dans la
- même section
Premièrement, toutes les redirections sont traitées avant les - alias, et ainsi, une requête qui correspond à une directive +
Premièrement, toutes les redirections sont traitées avant les
+ alias, et ainsi, une requête qui correspond à une directive
Ainsi, lorsqu'une ou plusieurs de ces directives s'appliquent au - même sous-répertoire, vous devez classer les chemins du plus précis - au moins précis afin que toutes les directives puissent - éventuellement s'appliquer, comme dans l'exemple suivant :
+ même sous-répertoire, vous devez classer les chemins du plus précis + au moins précis afin que toutes les directives puissent + éventuellement s'appliquer, comme dans l'exemple suivant :Si l'ordre des directives était inversé, la directive /foo serait toujours appliquée avant la directive
+ /foo serait toujours appliquée avant la directive
/foo/bar, et cette dernière serait toujours
- ignorée.
/foo/bar, et cette dernière serait toujours
+ ignorée.
- La définition de directives
La directive
Une requête pour http://example.com/image/foo.gif fera
+
Une requête pour http://example.com/image/foo.gif fera
renvoyer par le serveur le fichier
- /ftp/pub/image/foo.gif. Seuls les éléments de chemin
- complets sont testés ; ainsi l'alias précédent ne conviendra pas
- pour une requête du style http://example.com/imagefoo.gif.
+ /ftp/pub/image/foo.gif. Seuls les éléments de chemin
+ complets sont testés ; ainsi l'alias précédent ne conviendra pas
+ pour une requête du style http://example.com/imagefoo.gif.
Pour des mises en correspondance plus complexes faisant intervenir
- les expressions rationnelles, veuillez vous reporter à la directive
+ les expressions rationnelles, veuillez vous reporter à la directive
Notez que si vous ajoutez un slash de fin au chemin URL, vous devrez aussi ajouter un slash de fin au chemin de la - requête. Autrement dit, si vous définissez
+ requête. Autrement dit, si vous définissezl'alias précédent ne s'appliquera pas à l'url
- /icons à cause de l'absence du slash final. Ainsi, si
+
l'alias précédent ne s'appliquera pas à l'URL
+ /icons à cause de l'absence du slash final. Ainsi, si
le slash final est absent du chemin de l'URL, il doit
- aussi l'être du chemin du fichier.
Notez qu'il pourra s'avérer nécessaire de définir des sections +
Notez qu'il pourra s'avérer nécessaire de définir des sections
En particulier, si vous créez un alias ayant pour cible un - répertoire situé en dehors de l'arborescence de votre site web +
En particulier, si vous créez un alias ayant pour cible un
+ répertoire situé en dehors de l'arborescence de votre site web
Le nombre de slashes dans le paramètre chemin URL doit - correspondre au nombre de slashes dans le chemin URL de la requête.
+Le nombre de slashes dans le paramètre chemin URL doit + correspondre au nombre de slashes dans le chemin URL de la requête.
-Si la directive
Si la directive
- Cette syntaxe est disponible à partir de la version 2.4.13 du
+ Cette syntaxe est disponible à partir de la version 2.4.19 du
serveur HTTP Apache.
Cette directive est identique à la directive /icons, on peut
+ Par exemple, pour activer le répertoire /icons, on peut
utiliser :
Toute la puissance des
Il existe une différence subtile entre
En d'autres termes, le remplacement d'^ au début de
- l'expression rationnelle, (.*)$ à sa fin et
- $1 à la fin de la chaîne de remplacement.
^ au début de
+ l'expression rationnelle, (.*)$ Ã sa fin et
+ $1 à la fin de la chaîne de remplacement.
Par exemple, supposons que nous voulions reformuler cet alias avec AliasMatch :
@@ -274,14 +274,14 @@ en faisant intervenir les expressions rationnellesLe simple remplacement d'Alias par AliasMatch ne produira pas le - même résultat. Ainsi, ce qui suit va rediriger toutes les requêtes + même résultat. Ainsi, ce qui suit va rediriger toutes les requêtes qui contiennent /image/ vers /ftp/pub/image/ :
Voici la directive AliasMatch qui produira le même résultat que +
Voici la directive AliasMatch qui produira le même résultat que la directive Alias ci-dessus :
Bien entendu, il n'y a aucune raison d'utiliser
Les éventuels slashes de tête multiples seront supprimés par le +
Les éventuels slashes de tête multiples seront supprimés par le serveur avant que les directives de ce module n'effectuent des - comparaisons avec le chemin URL de la requête. + comparaisons avec le chemin URL de la requête.
@@ -312,8 +312,8 @@ en faisant intervenir les expressions rationnellesLa directive Redirect permet de faire correspondre une ancienne - URL à une nouvelle en demandant au client d'aller chercher la ressource à + URL à une nouvelle en demandant au client d'aller chercher la ressource à une autre localisation.
-L'ancien chemin URL est un chemin sensible à la casse - (décodé à l'aide de caractères %) commençant par un slash. Les - chemins relatifs ne sont pas autorisés.
+L'ancien chemin URL est un chemin sensible à la casse + (décodé à l'aide de caractères %) commençant par un slash. Les + chemins relatifs ne sont pas autorisés.
La nouvelle URL - peut être une URL absolue commençant par un protocole et un nom - d'hôte, mais on peut aussi utiliser un chemin URL commençant par un - slash, auquel cas le protocole et le nom d'hôte du serveur local - seront ajoutés.
+ peut être une URL absolue commençant par un protocole et un nom + d'hôte, mais on peut aussi utiliser un chemin URL commençant par un + slash, auquel cas le protocole et le nom d'hôte du serveur local + seront ajoutés. -Ensuite, toute requête commençant par chemin URL va +
Ensuite, toute requête commençant par chemin URL va renvoyer une redirection au client vers l'URL cible. Tout - élément de chemin supplémentaire situé en aval du chemin - URL sera ajouté à l'URL cible.
+ élément de chemin supplémentaire situé en aval du chemin + URL sera ajouté à l'URL cible.Si le client effectue une requête pour l'URL
- http://example.com/service/foo.txt, il lui sera demandé
+
Si le client effectue une requête pour l'URL
+ http://example.com/service/foo.txt, il lui sera demandé
d'en effectuer une autre pour l'URL
http://foo2.example.com/service/foo.txt. Ceci concerne
- les requêtes avec paramètres GET, comme
+ les requêtes avec paramètres GET, comme
http://example.com/service/foo.pl?q=23&a=42, qui
- seront redirigées vers
+ seront redirigées vers
http://foo2.example.com/service/foo.pl?q=23&a=42.
- Notez que les POSTs seront ignorés.
+ Notez que les POSTs seront ignorés.
Seuls les
- éléments de chemin complets sont testés, si bien que l'exemple
- précédent ne s'appliquera pas à l'URL
+ éléments de chemin complets sont testés, si bien que l'exemple
+ précédent ne s'appliquera pas à l'URL
http://example.com/servicefoo.txt. Pour des mises en
correspondance plus complexes utilisant la syntaxe des expressions, ne spécifiez pas
- d'argument chemin URL comme décrit ci-dessous. En outre,
+ href="../expr.html">syntaxe des expressions, ne spécifiez pas
+ d'argument chemin URL comme décrit ci-dessous. En outre,
pour une mise en correspondance en utilisant les expressions
- rationnelles, veuillez vous reporter à la directive
Les directives de redirection ont priorité sur les directives +
Les directives de redirection ont priorité sur les directives Alias et ScriptAlias, quel que soit leur ordre d'apparition dans le - fichier de configuration. Les directives Redirect définies au sein + fichier de configuration. Les directives Redirect définies au sein d'une section Location l'emportent sur les directives Redirect et Alias comportant un argument chemin URL.
Si aucun argument état n'est spécifié, la +
Si aucun argument état n'est spécifié, la redirection sera temporaire (code HTTP 302). Le client est alors - informé que la ressource a été temporairement déplacée. On peut - utiliser l'argument état pour renvoyer d'autres codes HTTP :
+ informé que la ressource a été temporairement déplacée. On peut + utiliser l'argument état pour renvoyer d'autres codes HTTP :On peut renvoyer d'autres codes en spécifiant le code - numérique comme valeur de l'argument of état. +
On peut renvoyer d'autres codes en spécifiant le code
+ numérique comme valeur de l'argument of état.
Si le code est compris entre 300 et 399, l'argument
- URL doit être présent. Si le code
+ URL doit être présent. Si le code
n'est pas compris entre 300 et 399, l'argument
- URL ne doit pas apparaître. Le code doit être un code
+ URL ne doit pas apparaître. Le code doit être un code
HTTP valide, connu du serveur HTTP Apache (voir la
fonction send_error_response dans
http_protocol.c).
Si une directive
Si une directive
- Cette syntaxe est disponible à partir de la version 2.4.13 du
+ Cette syntaxe est disponible à partir de la version 2.4.19 du
serveur HTTP Apache.
Cette directive est identique à la directive
Les remarques à propos de la différence entre
Cette directive informe le client que la redirection n'est
- que temporaire (code 302). Son comportement est exactement le même
+ que temporaire (code 302). Son comportement est exactement le même
que celui de Redirect temp.
Cette directive informe le client que la redirection est
- permanente (code 301). Son comportement est exactement le même
+ permanente (code 301). Son comportement est exactement le même
que celui de Redirect permanent.
La directive
La directive
Une requête pour http://example.com/cgi-bin/foo
- ferait exécuter par le serveur le script
+
Une requête pour http://example.com/cgi-bin/foo
+ ferait exécuter par le serveur le script
/web/cgi-bin/foo. Cette configuration est sensiblement
- équivalente à :
Dans ce scénario, tous les fichiers faisant l'objet d'une requête
- dans /cgi-bin/ seront traités par le fichier que vous
- avez spécifié, ce qui vous permet d'utiliser votre propre
+
Dans ce scénario, tous les fichiers faisant l'objet d'une requête
+ dans /cgi-bin/ seront traités par le fichier que vous
+ avez spécifié, ce qui vous permet d'utiliser votre propre
gestionnaire. Vous pouvez l'utiliser comme enveloppe (wrapper) pour
les scripts CGI afin d'ajouter du contenu, ou autre action "maison".
Si la directive
Si la directive
- Cette syntaxe est disponible à partir de la version 2.4.13 du
+ Cette syntaxe est disponible à partir de la version 2.4.19 du
serveur HTTP Apache.
Cette directive est équivalente à la directive /cgi-bin, on peut utiliser :
Comme dans le cas d'AliasMatch, toute la puissance des
Les remarques à propos de la différence entre
Il s'agit d'un module qui envoie le contenu statique avec une bande -passante limitée définie par les différents standards des anciens +passante limitée définie par les différents standards des anciens modems. Ainsi, il est possible de naviguer sur votre site avec un modem 56k V.92 en positionnant une configuration de ce type :
@@ -47,23 +47,23 @@ modems. Ainsi, il est possible de naviguer sur votre site avec un modemAuparavant, pour faire des modules de limitation de bande passante, -il fallait monopoliser un thread, pour chaque client, et insérer des -temporisations pour diminuer la bande passante. Grâce à cette nouvelle -fonctionnalité, un gestionnaire peut recevoir les réponses à ses -callbacks après N millisecondes, et il sera invoqué par le module MPM -Event dans un thread différent à la fin du délai indiqué. À partir de ce -moment, le gestionnaire peut continuer à envoyer des données au +il fallait monopoliser un thread, pour chaque client, et insérer des +temporisations pour diminuer la bande passante. Grâce à cette nouvelle +fonctionnalité, un gestionnaire peut recevoir les réponses à ses +callbacks après N millisecondes, et il sera invoqué par le module MPM +Event dans un thread différent à la fin du délai indiqué. à partir de ce +moment, le gestionnaire peut continuer à envoyer des données au client.
Cette directive permet de spécifier le standard de modem que vous +
Cette directive permet de spécifier le standard de modem que vous souhaitez simuler.