[Resolue]les anciennes pages dynamiques vers les nouvelles.

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


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

[Resolue]les anciennes pages dynamiques vers les nouvelles.

Message le Jeu Juin 21, 2007 20:20

j'essaie de renvoyer les anciens url vers les nouveaux par un 301
Le htaccess normale :
Code: Tout sélectionner
RewriteRule ^page-(.*)-ref-(.*)\.html$ /index.php?page=$1&ref=$2 [L]

ca marche impec sauf que chaque page est encore accessible par son encien url.
et lorsque je fait :
Code: Tout sélectionner
RewriteRule ^page-(.*)-ref-(.*)\.html$ /index.php?page=$1&ref=$2 [L,R=301]

J'ai l'inverse ca me renvoie vers l'ancienne page alors je l'inverse comme ca :
Code: Tout sélectionner
RewriteRule ^index.php?page-(.*)&ref=(.*)$ /page-(.*)-$2.html [R=301]
RewriteRule ^page-(.*)-ref-(.*)\.html$ /index.php?page=$1&ref=$2 [L]


Mais rien ca marche pas.
Je suis bloqué.... :( et tout aide est le bien venue

PS : J'avais deja vue un post ici qui montrait comment reecrire puis comment redireger les anciens vers les nouveaux mais j'arrive pas a le retrouver. :roll:
-----------------------------
Voici la solution apres 3 jours de test et recherche ... 8) :

Code: Tout sélectionner
RewriteEngine on
#
#Pour reecrire les liens :
#
RewriteRule ^page-(.*)-ref-(.*)\.html$ /index.php?page=$1&ref=$2 [L]
#
#Pour rediriger les anciennes pages dynamiques vers les nouvelles :
#
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\?page=([^&]+)&ref=([^\ ]+)\ HTTP/
RewriteRule ^index\.php$ http://site.com/page-%1-ref-%2.html? [R=301,L]
Dernière édition par medjaz le Sam Juin 23, 2007 13:05, édité 1 fois.


Seraph
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 405
Inscription: 2 Avr 2006

Message le Jeu Juin 21, 2007 20:55

Non mais c'est normal que la page soit accessible par l'ancien URL...

Mets juste ça :
Code: Tout sélectionner
RewriteRule ^page-(.*)-ref-(.*)\.html$ /index.php?page=$1&ref=$2 [L]


Et ne fais pas de lien de type /index.php?page=$1&ref=$2 sur ton site.


Nick ar gall
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 25
Inscription: 17 Juin 2005

Message le Jeu Juin 21, 2007 22:21

Et pour rediriger les anciennes URL indexées par les moteurs de recherche, tu as écrit ta règle de redirection à l'envers. Et dans ce que tu mets tu as une erreur, tu utilises (.*) dans la seconde partie de la règle.

Code: Tout sélectionner
RewriteRule ^index.php?page=(.*)&ref=(.*)$ /page-$1-ref-$2\.html [R=301]

A placer avant l'autre règle de réécriture en effet.


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

Message le Ven Juin 22, 2007 10:39

Seraph
Je ne trouve pas la difference entre se code et le miens, c'est le meme, la reecriture marche impec mais les anciennes toujours accessible avec se meme code, j'ai reverifier.

Nick ar gall
J'ai reessayer avec ton code mais ca marche pas, je la'i mis avant l'autre je l'ai bien verifier mais rien ne se passe comme s'il n'existait pas..


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6468
Inscription: 13 Juin 2005

Message le Ven Juin 22, 2007 11:01

oups j'm'a gouré je crois : essaie ça

Code: Tout sélectionner
RewriteRule ^index\.php?page=(.*)&ref=(.*)$ /page-$1-ref-$2.html [R=301]


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

Message le Ven Juin 22, 2007 11:17

nickargall a écrit:oups j'm'a gouré je crois : essaie ça

Code: Tout sélectionner
RewriteRule ^index\.php?page=(.*)&ref=(.*)$ /page-$1-ref-$2.html [R=301]


Ca marche pas, les ? = et & ne pose t-il pas de probleme sur se 301 ?


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

Message le Ven Juin 22, 2007 11:45

J'ai mis ca :
Code: Tout sélectionner
RewriteCond %{QUERY_STRING} ref=([0-9]+)
RewriteRule ^(.*)$ http://www.site.com/page-mot1-mot2-ref-%1.html [L,R=301]


sa redirige vers cette url :
-http://www.site.com/page-mot1-mot2-ref-112.html?page=mot1-mot2&ref=112

et non pas comme ca :
-http://www.site.com/page-mot1-mot2-ref-112.html


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Ven Juin 22, 2007 14:19

Tu veux faire une redirection et tu utilises une commande de réécriture. Donc forcement par defaut ca te replace ta chaine.

utilise:
RedirectMatch


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6468
Inscription: 13 Juin 2005

Message le Ven Juin 22, 2007 14:35

Edit cause racontage de bêtises : Tiens il commence à pleuvoir ici
Dernière édition par nickargall le Ven Juin 22, 2007 14:56, édité 1 fois.


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Ven Juin 22, 2007 14:42

nickargall a écrit:ben non, il utilise un rewiterule nouveau-ancien [L] pour la réécriture
coulpé par un rewriterule ancien-nouveau [R=301] pour la redirection


et comment empeche tu la chaine(Query) de passer ? regarde bien son probleme. J'ai eu le meme et je suis passé par un RedirectMatch pour le solutionner. Si tu as la solution avec rewiterule, je suis prenneur.


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6468
Inscription: 13 Juin 2005

Message le Ven Juin 22, 2007 14:55

oups en effet je raconte n'importe quoi. J'édite mon message précédent.


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

Message le Ven Juin 22, 2007 16:53

rewriterule ou redirectmatch, quelque soit la solution je suis preneur.

J'ai changer rewriterule par redirectmatch et ca marche tjs pas.

J'ai aussi mis :
Code: Tout sélectionner
RedirectMatch 301 index.php?page=mot1-mot2&ref=(.*) http://www.site.com/page-mot1-mot2-ref-$1.html


et rien

une redirection avec rewrite rule ca existe et comme j'ai dit plus haut ca marche a l'inverse chez moi et pas comme je veux..


medjaz
WRInaute discret
WRInaute discret
 
Messages: 249
Inscription: 25 Mar 2006

Message le Sam Juin 23, 2007 12:24

y'a t il une erreur ?
Code: Tout sélectionner
RewriteRule ^index\.php$ %{QUERY_STRING} [C]
RewriteRule ref=(.*) http://www.site.com/page-mot1-mot2-ref-$1\.html? [R=301]


Sur la barre de navigation Firefox la redirection parait bonne mais ca me dit impossible, une redirection qui n'aboutira pas ?....


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 3 invités