rewriterule dans un repertoire

WRInaute discret
Hello à tous,

j'ai un petit soucis avec une règle de réécriture. En fait je voudrais faire une redirection classique mais au sein du repertoire, voilà ce que j'ai pour l'instant :

Rewriterule ^test.html$ /essai/test.php [L]
Rewriterule ^test-([0-9]+).html$ /essai/test.php?numero=$1 [L]

La redirection s'effectue bien mais ma variable $1 n'est pas transmise.

J'ai donc essayé :
Rewriterule ^/essai/test.html$ /essai/test.php [L]
Rewriterule ^/essai/test-([0-9]+).html$ /essai/test.php?numero=$1 [L]

et sans le slash initial :
Rewriterule ^essai/test.html$ /essai/test.php [L]
Rewriterule ^essai/test-([0-9]+).html$ /essai/test.php?numero=$1 [L]

Mais là cela ne marche absolument pas...

Quelqu'un a-t-il une idée de la syntaxe exacte ?

Merci d'avance !
 
WRInaute passionné
c'est sur qu'il ne faut pas mettre le / après ^
la syntaxe est bonne. tu peux remplacer .html par \.html car le . est un caractère spécial qui veut dire n'importe quel caractère.
si tu fais un echo $_GET['numero'] dans /essai/test.php tu n'as rien qui s'affiche en appelant test-123.html ?
 
WRInaute discret
Merci webmasterlamogere,

Je vais essayer de neutraliser le "." avec un "\".

si tu fais un echo $_GET['numero'] dans /essai/test.php tu n'as rien qui s'affiche en appelant test-123.html ?

Exactement, en utilisant le premier rewriterule, la variable ne me retourne aucune valeur.


Les deux autres méthodes, me donnent une erreur 404.
 
Discussions similaires
Haut