[APACHE DOCUMENTATION]

Apache HTTP Server Version 1.3

Module mod_alias

Ce module est implémenté dans le fichier mod_alias.c, et est compilé par défaut. Il permet l'intégration de diverses parties du système de fichiers dans l'arborescence de documents servis par le serveur, et intègre le mécanisme de redirection d'URL.

Directives


Directive : Alias

Syntaxe : Alias url-chemin repertoire-nomFichier
Contexte : configuration serveur, hôtes virtuels
Statut : Base
Module : mod_alias

La directive Alias permet de stocker des documents accessibles dans d'autres emplacements du système de fichier que la sous-arborescence définie à partir du répertoire DocumentRoot. Des URL (décodées) commençant par une combinaison url-chemin auront accès à des fichiers locaux correspondant à un chemin absolu repertoire-nomFichier.

Exemple:

Alias /image /ftp/pub/image

Une requête pour http://myserver/image/foo.gif fairait renvoyer le fichier /ftp/pub/image/foo.gif par le serveur.

Notez que si vous incluez un / final dans la définition de url-chemin alors le serveur demandera un / final pour rediriger le chemin. C'est-à-dire, si vous écrivez Alias /icons/ /usr/local/apache/icons/ alors l'URL /icons ne sera pas redirigée.

Voir aussi ScriptAlias.


Directive : AliasMatch

Syntaxe : AliasMatch regex repertoire-nomFichier
Contexte : configuration serveur, hôtes virtuels
Statut : Base
Module : mod_alias
Compatibilité : Disponible à partir de la version 1.3 d'Apache.

Cette directive est équivalente à la directive Alias, mais autorise l'usage d'expressions régulières, au lieu d'un simple préfixe. L'expression régulière mentionnée est appliquée à l'URL, et si une correspondance est trouvée, le serveur récupérera tout sous-motif entre parenthèse et le gardera comme nom de fichier. Par exemple, pour atteindre le répertoire /icons, on pourrait écrire :

AliasMatch ^/icons(.*) /usr/local/apache/icons$1


Directive : Redirect

Syntaxe : Redirect [ status ] url-chemin url
Contexte : configuration serveur, hôtes virtuels, répertoire, .htaccess
Statut : Base
Module : mod_alias
Compatibilité : Les contextes de répertoires (sections ) et .htaccess ne sont disponibles qu'à partir de la version 1.1 d'Apache. L'argument status n'apparaît qu'à partir de la version 1.2.

La directive Redirect redirige une ancienne URL vers une nouvelle. La nouvelle URL est renvoyée au client que tente une nouvelle requête sur cette adresse. Url-chemin est un chemiun d'accès (décodé) ; toute requête vers un document appartenant à une dépendance de ce chemin se verra retourner un avis de redirection vers une nouvelle url (encodée) commençant par url.

Exemple:

Redirect /service http://foo2.bar.com/service

Si le client requiert http://myserver/service/foo.txt, il lui sera signifié de tenter d'accéder à http://foo2.bar.com/service/foo.txt à la place.

Note : Les directives Redirect ont la priorité sur les directives Alias et ScriptAlias, quel que soit leur ordre dans le fichier de configuration. De plus, url-chemin doit être un chemin d'accès absolu, et non un chemin relatif, même lorsque inscrit dans un fichier .htaccess ou dans une section <Directory>.

Si aucun argument status n'est mentionné, la direction sera indiquée comme "temporaire" (code de réponse HTTP = 302). Ceci indique au client que l'adresse est redirigée temporairement. L'argument status peut être utilisé pour renvoyer d'autres codes de réponse HTTP :

permanent
Renvoie une signification de redirection permanente (301) (équivalent à un "déménagement" de la ressource).
temp
Renvoie une signification de redirection temporaire (302) (par défaut).
seeother
Renvoie une signification de déplacement "See Other" (303) indiquant que la ressource a été remplacée par une autre.
gone
Renvoie une signification de disparition (410) indiquant que la ressource a été définitivement supprimée. Lorque cette valeur de status est utilisée, l'argument url devra être omis.

D'autres codes de réponse peuvent être renvoyés en donnant à l'argument status une valeur numérique équivalente au code souhaité. Si cette valeur se situe entre 300 et 399, l'argument url doit être présent, autrement il doit être omis. Notez que cette valeur doit être connue par le code Apache (voir la fonction send_error_response dans http_protocol.c).


Directive : RedirectMatch

Syntaxe : RedirectMatch [status ] regex url
Contexte : configuration serveur, hôtes virtuels
Statut : Base
Module : mod_alias
Compatibilité : Disponible à partir de la version 1.3 d'Apache

Cette directive est équivalente à la directive Redirect, mais permet l'utilisation d'expressions régulières, au lieu d'une simple correspondance de préfixe. L'expression régulière est appliquée à l'URL, et si une correspondance est trouvée, le serveur récupérera tout sous-motif parenthésé et l'utilisera comme nom de fichier. Par exemple, pour rediriger tous les fichiers GIF vers des fichiers de même noms, mais d'extension JPEG sur un autre serveur, on écrira :

RedirectMatch (.*)\.gif$ http://www.anotherserver.com$1.jpg


Directive : RedirectTemp

Syntaxe : RedirectTemp url-path url
Contexte : configuration serveur, hôtes virtuels, répertoire, .htaccess
Statut : Base
Module : mod_alias
Compatibilité : Disponible seulement à partir de la version 1.2 d'Apache

Cette directive indique au client que la redirection n'est que temporaire (code 302). Equivalent d'une directive Redirect temporary.


Directive : RedirectPermanent

Syntaxe : RedirectPermanent url-chemin url
Contexte : configuration serveur, hôtes virtuels, répertoire, .htaccess
Statut : Base
Module : mod_alias
Compatibilité : Disponible seulement à partir de la version 1.2 d'Apache

Cette directive indique au client que la redirection est permanente (code 301). Equivalent d'une directive Redirect permanent.


ScriptAlias directive

Syntaxe : ScriptAlias url-chemin répertoire-nomFichier
Contexte : configuration serveur, hôtes virtuels
Statut : Base
Module : mod_alias

La directive ScriptAlias a le même comportement que la directive Alias, à part qu'elle précise en plus que le répertoire cible contient des scripts CGI. Les URL (décodées) qui visent une dépendance de url-chemin seront redirigées vers des scripts dont le chemin débute par repertoire-nomFichier.

Exemple :

ScriptAlias /cgi-bin/ /web/cgi-bin/

Une requête visant http://myserver/cgi-bin/foo résultera en l'exécution du script /web/cgi-bin/foo par le serveur.


ScriptAliasMatch

Syntaxe : ScriptAliasMatch regex repertoire-nomFichier
Contexte : configuration serveur, hôtes virtuels
Statut : Base
Module : mod_alias
Compatibilité : Disponible à partir de la version 1.3 d'Apache

Cette directive est équivalente à la directive ScriptAlias, mais permet l'utilisation d'expressions régulières, au lieu d'une simple correspondance de préfixe. L'expression régulière est appliquée à l'URL, et si une correspondance est trouvée, le serveur récupérera tout sous-motif parenthésé et l'utilisera comme nom de fichier. Par exemple, pour atteindre le répertoire /cgi-bin standard, on écrira :

ScriptAlias ^/cgi-bin(.*) /usr/local/apache/cgi-bin$1

Apache HTTP Server Version 1.3

Index Home

Adaptation française © Valery Fremaux / EISTI 1998