probleme dans mon expression reguliere pour le rewriting

Nouveau WRInaute
Bonjour a toutes et a tous !

J'ai rencontre un petit probleme de rewriting pour mon site web.

Premierement j'ai lu, le tutoriel pour activer le rewriting (modification dans httpd.conf) + ecriture
du .htaccess dans le repertoire du site.

Mon probleme ce situe sur l'expression reguliere:

Mon site a une addresse comme ceci: http://www.site.fr/index.php?cat=divers&page=news

le rendu doit etre : http://www.site.fr/divers-news.html


Voila le fichier .htaccess que j'ai fais :

Options +FollowSymlinks
RewriteEngine on

RewriteRule (_[a-z])*-(_[a-z])\.html$ /index.php?cat=$1&page=$2 [L]

je pense qu'il y'a un probleme dans l'expression reguliere, mais je ne suis pas sure...

Toute aide, peut m'ettre utile, merci.[/quote]
 
WRInaute accro
Code:
RewriteEngine on
RewriteRule ^([a-z]+)-([a-z]+)\.html$ /index.php?cat=$1&page=$2 [L]

...devrait marcher, pense a mettre le début de chaine avec le métacaractère (^).
Si le code ne fonctionne pas, indique nous le message d'erreur retourné par le navigateur. (404,500..)
 
WRInaute accro
annelaure75 a dit:
RewriteRule (_[a-z])*-(_[a-z])\.html$ /index.php?cat=$1&page=$2 [L]

(_[a-z]) ça veut dire "_" suivi d'un lettre (minuscule, non accentuée). (_[a-z])* ça veut dire 0, 1 ou plusieurs fois cette séquence.

Bref, ton expression régulière "matche" des choses comme _a_b_c-_d.html. Elle ne matche pas "/divers-news.html".

L'expression qu'il te faut a priori c'est ^/([a-z]+)-([a-z]+)\.html$ (presque celle de KOogar, mais il manquait un /). Un petit flag NC ne devrait pas faire de mal (pour ne pas être sensible à la casse).

Jacques.
 
WRInaute passionné
jcaron a dit:
L'expression qu'il te faut a priori c'est ^/([a-z]+)-([a-z]+)\.html$ (presque celle de KOogar, mais il manquait un /). Un petit flag NC ne devrait pas faire de mal (pour ne pas être sensible à la casse).

Jacques.
il n'y a jamais de / en début d'url dans la partie gauche : il n'est pas transmis.
 
Discussions similaires
Haut