Salut,
Je crois avoir trouvé une solution pour le .htaccess et la redirection de certaines pages à l’aide de "RewriteRule", mais je ne comprends pas tellement la logique de la règle d’URL Rewriting de MODx...
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Bon okay, si on a une URL du style "www.monsite.com/fajitas" ça donne "www.monsite.com/index.php?q=fajitas", ça je comprends.
Mais je vois pas ou le serveur fait la distinction entre les pages de contenu qui doivent être effectivement traitées par cette règle et les images, les css et autres fichiers...
Par exemple, pourquoi quand on demande l’URL "www.monsite.com/mon_image.png" par défaut, il ne semble pas afficher "www.monsite.com/index.php?q=mon_image.png", mais bien "www.monsite.com/mon_image.png" ?
Là, déjà, je comprends pas....
Mais en plus, lorsque l’on ajoute une autre règle de type "RewriteRule" avant celle du fichier ".htaccess", comme par magie, le serveur semble cette fois si interpréter la règle de MODx normalement et donc l’URL "www.monsite.com/mon_image.png" me redirige donc bien sur "www.monsite.com/index.php?q=mon_image.png" qui ne marche pas du coup (mais ça c’est normal).
Donc si on ajoute d’autres règles de type "RewriteRule" avant celle de MODx, il faut bien penser à spécifier les conditions d’utilisation de celle de MODx.
J’ai pas encore trop l’habitude de MODx, mais il me semble que toutes les pages de contenue ont l’extension ".php". Donc on va demander au serveur de n’appliquer la règle de MODx uniquement sur les fichiers php.
On a donc un truc du style :
# On redirige notre page
Redirect permanent /dossiers/reseaux/mon_dossier http://www.monsite.com/dossiers/internet_et_reseaux/mon_dossier.php
# Utiliser les règles suivantes uniquement s'il s'agit d'un fichier ".php"
RewriteCond %{REQUEST_URI} \.(php)
# Serveur, laisse mon forum tranquille est n'applique pas ta règle STP !
RewriteCond %{REQUEST_URI} !^/forums/
# La règle d'URL rewriting pour MODx
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
ErrorDocument 404 http://www.monsite.com/404.php
Ca semble correctement marcher comme cela.
Bonne journée à toutes et tous