Concaténation de règles

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics


Xou
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 2 Juin 2006

Concaténation de règles

Message le Lun Juil 24, 2006 11:44

Bonjour,

je me demandais si je ne pouvais pas simplifier ces 4 règles là pour n'en faire qu'une seule:

Code: Tout sélectionner
RewriteRule ^([a-z]+)\.html$ index.php?page=$1 [L]
RewriteRule ^([a-z]+)-([a-z]+)\.html$ index.php?page=$1-$2 [L]
RewriteRule ^([a-z]+)-([a-z]+)-([a-z]+)\.html$ index.php?page=$1-$2-$3 [L]
RewriteRule ^([a-z]+)-([a-z]+)-([a-z]+)-([a-z]+)\.html$ index.php?page=$1-$2-$3-$4 [L]

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Lun Juil 24, 2006 13:06

Salut,

Essai ceci :
Code: Tout sélectionner
RewriteRule ^([az-]+)\.html$ index.php?page=$1 [L]


A+


Leonick
WRInaute accro
WRInaute accro
 
Messages: 18812
Inscription: 8 Aoû 2004

Message le Lun Juil 24, 2006 14:55

ben non, car dans ce cas il ne récupère plus les $2, $3 etc...

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Lun Juil 24, 2006 14:59

Si tu regardes bien le paramètre qu'il passe en page et donc $2, $3 etc.. est exactenment le même qui se trouve entre le ^ et \.html si on prend tout ce qui est caractère et - alors ça revient à faire ces 4 règles puisque si la page se nomme

ab-cd-ef-hj.html devien en => index.php?page=ab-cd-ef-hj

A+


Leonick
WRInaute accro
WRInaute accro
 
Messages: 18812
Inscription: 8 Aoû 2004

Message le Lun Juil 24, 2006 15:02

Tout à fait :oops:


Xou
WRInaute discret
WRInaute discret
 
Messages: 187
Inscription: 2 Juin 2006

Message le Lun Juil 24, 2006 15:38

Sir Dipp a écrit:Salut,

Essai ceci :
Code: Tout sélectionner
RewriteRule ^([az-]+)\.html$ index.php?page=$1 [L]


A+


Leonick à raison, cette règle ne marchera jamais !
à la rigueur j'aurais pu faire:
RewriteRule ^(.+)\.html$ index.php?page=$1 [L]
Mais je souhaite maîtriser ce qui est passé dans l'url.

Et pour cela il faut imbriquer les patterns:
RewriteRule ^([a-z]+(-[a-z]+){0,3})\.html$ index.php?page=$1 [L]


Merci d'avoir essayé de m'aider. ;)

Sir Dipp
WRInaute passionné
WRInaute passionné
 
Messages: 1025
Inscription: 21 Juil 2003

Message le Lun Juil 24, 2006 15:55

J'étais pas sûr de la syntaxe :-)

A+


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités