mod_rewrite: paramètre perdu

Petit nouveau ! | 1 Messages

01 avr. 2011, 15:31

Bonjour,
J'ai un problème avec mod_rewrite.
j'aimerais réécrire les adresses suivantes:
http://www.xyz.com/batiments-108 ==> http://www.xyz.com/a_batiments.php?e=108

Cela me semble simple. Voilà le contenu du .htaccess situé dans le dossier de base du site:
RewriteEngine On
Options +FollowSymlinks
RewriteCond %{REQUEST_URI} ^/batiments-[0-9]+/?$
RewriteRule ^batiments-([0-9]+)/?$ a_batiments.php?e=$1 [QSA]

J'ai testé avec et sans [QSA], avec et sans [L], avec et sans [L,QSA], même résultat:
j'obtiens http://www.xyz.com/a_batiments.php: le paramètre e=108 est perdu.
Dans le log de mod_rewrite, je vois que l'adresse est correctement construite, puis le paramètre est séparé par un split avec args=e=108.
Mais il n'est pas remis sur l'adresse.
Quelqu'un peut-il m'expliquer ? J'ai pas mal cherché sur Google - sans résultat.
Merci d'avance !
jdbur