besoin d'une petite aide sur l'url rewriting

  • Auteur de la discussion Auteur de la discussion Isabelle
  • Date de début Date de début
I
Isabelle
Guest
Pour être sure d'avoir bien compris, pouvez-vous confirmer que si je veux faire ceci :

nomdedomaine/index.php?dir=toto_momo
remplacé par nomdedomaine/toto_momo.html
et
nomdedomaine/index.php?dir=toto_momo&num=x
remplacé par nomdedomaine/toto_momo-x.html

je peux faire un htaccess avec :
RewriteEngine on
RewriteRule ^([0-9]+)\.html$ index.php ?dir=$1
RewriteRule ^([0-9]+)-([0-9]+)\.html$ index.php ?dir=$2&num=$3
[NC,L]

ça a l'air trop simple pour être bon.

Enfin, une question que je me pose :
une fois l'url rewriting mis en place, mes liens en "dur" c'est à dire mes liens à mettre dans ma page devront être :
nomdedomaine/index.php?dir=toto_momo ou nomdedomaine/toto_momo.html

Merci beaucoup
:D
 
WRInaute discret
Bonjour,

je ne suis pas expert mais je verrais plutot quelque chose comme:

Code:
RewriteEngine on
RewriteRule ^([a-z_]+)\.html$  index.php?dir=$1[NC,L]
RewriteRule ^([a-z_]+)-([0-9]+)\.html$  index.php?dir=$1&num=$2 [NC,L]

les [a-z_] c'est parce que tes champs sont alphabetique (avec underscore _ ) et pas numeriques (j'ai supposé que ton x dans l'exemple etait un chiffre, sinon tu dois remplacer le dernier [0-9] par [a-z_]). Si tes champs sont alphanumeriques utilises [a-z_0-9].

dans tes pages utilise nomdedomaine/toto_momo.html pour que google suive ces liens.

Ben
 
I
Isabelle
Guest
re

Merci beaucoup pour cette aide :D

Avec l'url rewriting, il faut donc que je change tous les liens php par mes "faux" liens html, ca va etre super long 8O

Je vais faire mes tests ce soir.
 
WRInaute occasionnel
Ma suggestion :
Code:
RewriteEngine on
RewriteRule ^([a-z]+_[a-z]+)\.html$ index.php?dir=$1 [NC,L]
RewriteRule ^([a-z]+_[a-z]+)-([0-9])\.html$ index.php?dir=$1&num=$2 [NC,L]

- insensible à la casse ([NC])
- la réécriture s'arrête après chaque règle ([L])

Code:
Enfin, une question que je me pose :
une fois l'url rewriting mis en place, mes liens en "dur" c'est à dire mes liens à mettre dans ma page devront être :
nomdedomaine/index.php?dir=toto_momo ou nomdedomaine/toto_momo.html

Les anciens liens continuent de fonctionner. Il faut les remplacer par les nouveaux dans ton code HTML sinon l'URL rewriting n'a pas d'utilité.

N'oublie pas de lire le guide sur l'url rewriting sur ce site, et les docs officielles :wink:

Jocelyn
 
Discussions similaires
Haut