<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Module Apache mod_rewrite

Langues Disponibles:  en  |  fr 

Description:Ce module fournit un moteur de réécriture à base de règles permettant de réécrire les URLs des requêtes à la volée
Statut:Extension
Identificateur de Module:rewrite_module
Fichier Source:mod_rewrite.c

Sommaire

Le module mod_rewrite utilise un moteur de réécriture à base de règles, basé sur un interpréteur d'expressions rationnelles PCRE, pour réécrire les URLs à la volée. Par défaut, mod_rewrite met en correspondance une URL avec le système de fichiers. Cependant, on peut aussi l'utiliser pour rediriger une URL vers une autre URL, ou pour invoquer une requête interne à destination du mandataire.

mod_rewrite fournit une méthode souple et puissante pour manipuler les URLs en utilisant un nombre illimité de règles. Chaque règle peut être associée à un nombre illimité de conditions, afin de vous permettre de réécrire les URLs en fonction de variables du serveur, de variables d'environnement, d'en-têtes HTTP, ou de repères temporels.

mod_rewrite agit sur la totalité de l'URL, y compris la partie chemin. Une règle de réécriture peut être invoquée dans httpd.conf ou dans un fichier .htaccess. Le chemin généré par une règle de réécriture peut inclure une chaîne de paramètres, ou peut renvoyer vers un traitement secondaire interne, une redirection vers une requête externe ou vers le mandataire interne.

Vous trouverez d'avantage de détails, discussions et exemples dans la documentation détaillée sur mod_rewrite.

Sujets

Directives

Ce module ne fournit aucune directive.

top

Journalisation

mod_rewrite offre une journalisation détaillée de ses actions aux niveaux de journalisation trace1 à trace8. Le niveau de journalisation peut être défini de manière spécifique à mod_rewrite via la directive LogLevel : jusqu'au niveau debug aucune action n'est journalisée, alors qu'elles le sont pratiquement toutes au niveau trace8.

L'utilisation d'un niveau de journalisation élevé pour mod_rewrite va ralentir votre serveur HTTP Apache de manière dramatique ! N'utilisez un niveau de journalisation supérieur à trace2 qu'à des fins de débogage !

Exemple

LogLevel alert rewrite:trace3

RewriteLog

Ceux qui sont familiers avec les versions précédentes de mod_rewrite vont probablement rechercher en vain les directives RewriteLog et RewriteLogLevel. Elles ont été en effet remplacées par une configuration de la journalisation par module, comme mentionné plus haut.

Pour extraire les traces spécifiques à mod_rewrite, affichez le fichier journal en redirigeant la sortie vers grep :

tail -f error_log|fgrep '[rewrite:'

Langues Disponibles:  en  |  fr 

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 again 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 Freenode, or sent to our mailing lists.