2011-11-02 7 views
0

Si j'utilise ceci:IfModule ne semble pas fonctionner?

<IfModule mod_rewrite.c> 
RewriteEngine On 
RedirectMatch 301 ^/training/(.*) /faculty/training.html 
</IfModule> 

les réoriente ne se produisent pas.

Même avec:

<IfModule mod_rewrite> 
... 
</IfModule> 

Cependant, cela fonctionne comme prévu:

RewriteEngine On 
RedirectMatch 301 ^/training/(.*) /faculty/training.html 

En d'autres termes, la redirection fonctionne très bien en dehors du bloc <IfModule>.

Y a-t-il une raison pour laquelle <IfModule> ne détecterait pas mod_rewrite.c?

Répondre

2

La directive RedirectMatch fait partie de mod_alias.c et non de mod_rewrite.c, Vous voulez que votre IfModule vérifie mod_alias.c. Vous n'avez pas non plus besoin d'activer RewriteEngine puisque RedirectMatch ne l'utilise pas.

+0

Huh. Juste comme il est dit dans les docs. Merci, Jon! – Blue