Serveur Apache HTTP Version 2.4

Apache > Serveur HTTP > Documentation > Version 2.4

# Le module Apache mod_rewrite

`mod_rewrite` permet de modifier les requêtes entrantes dynamiquement, en fonction de règles manipulant des expressions rationnelles. Vous pouvez ainsi relier des URLs arbitraires à votre propre structure d'URLs interne comme vous le souhaitez.

Il fournit un mécanisme de manipulation d'URL particulièrement souple et puissant en supportant un nombre illimité de règles et de conditions attachées à chaque règle. Les manipulations d'URLs peuvent dépendre de tests variés : les URLs peuvent être finement caractérisées en fonction de variables du serveur, de variables d'environnement, d'en-têtes HTTP, de repères temporels, de recherches dans des bases de données externes, ou même de requêtes vers des bases de données externes et de différents gestionnaires ou programmes externes.

Les règles de réécriture peuvent agir sur l'ensemble des URLs (la partie chemin et la chaîne de paramètres) et peuvent être utilisées dans le contexte du serveur principal (`httpd.conf`), mais aussi dans le contexte des serveurs virtuels (sections `<VirtualHost>`), ou dans le contexte des répertoires (fichiers `.htaccess` et blocs `<Directory>`. Le résultat réécrit peut conduire vers d'autres règles à un traitement secondaire interne, une redirection vers une requête externe ou même l'envoi vers un serveur mandataire, en fonction des drapeaux que vous attachez aux règles

mod_rewrite étant très puissant, il peut par conséquent être très complexe. Ce document complète la documentation de référence du module mod_rewrite, et est sensé alléger un peu cette complexité, et présenter des exemples largement commentés, ainsi que des situations courantes que vous pourrez traiter avec mod_rewrite. Mais nous voulons aussi vous montrer des situations où vous ne devrez pas utiliser mod_rewrite, et lui préférer d'autres fonctionnalités standard d'Apache, évitant ainsi d'entrer dans une complexité inutile.

- documentation de référence de mod_rewrite
- Introduction aux expressions rationnelles et à mod_rewrite
- Utilisation de mod_rewrite pour la redirection et la remise en correspondance avec le système de fichiers des URLs
- Utilisation de mod_rewrite pour le contrôle d'accès
- Les serveurs virtuels dynamiques avec mod_rewrite
- Les serveurs mandataires dynamiques avec mod_rewrite
- Utilisation de RewriteMap
- Techniques avancées
- Quand NE PAS utiliser mod_rewrite
- Drapeaux de réécriture
- Détails techniques

### Voir aussi

- Documentation de référence de mod_rewrite
- Mise en correspondance des URLs avec le système de fichiers
- wiki mod_rewrite
- Glossaire