Webmaster Hub: Changement règles réécriture et référencement - Webmaster Hub

Voir le contenu

Page 1 sur 1
  • Vous ne pouvez pas créer de sujet
  • Vous ne pouvez pas répondre au sujet

Changement règles réécriture et référencement Noter le sujet : -----

#1 Invité_faz_*

  • Groupe : Invité

Posté 02 novembre 2004 - 10:37

Bonjour

Je viens de lancer la V2 de mon site (http://www.francomix.com) tournant désormais sous SPIP.
Mes pages articles, rubriques, brèves sont à l'origine sous la forme :

article.php3?id_article=12 
rubrique.php3?id_rubrique=12 
breve.php3?id_breve=12


Pour rendre mes url plus lisibles, compréhensibles, et pertinentes pour les MR et les recherches j'ai mis des règles de réécritures dans le htaccess qui permettent de transformer l'url d'un article par ex en :

article=Saint_ Germain___Tourist=34.html


Ici l'url reprend le titre de l'article et l'id correspondant. Tout fonctionnait parfaitement .
Sauf que les stats fournies par mon hébergeur ne prenaient pas en compte ces url et affichaient seulement /article. Pas très précis.
Mon hébergeur m'a dit de supprimer le caractère = et de le remplacer par un -.
Très bien je change les règles de réécriture dont voici le code :

RewriteEngine on
RewriteRule ([a-z]+)-([^=]*)-([0-9]+).html$    /$1.php3?id_$1=$3 [QSA,L]


et les nouvelles url deviennent par ex pour l'article de st germain :

article-Saint_ Germain___Tourist-34.html


Ok. Sauf que Google étant passé par mon site entretemps à référencé toutes les pages avec les =. Et là est mon problème. Je ne voudrais pas risquer le duplicat-content de Google. On sait jamais

Donc on m'a parlé de la redirection dans le htaccess avec le Mod_rewrite et le code 301 pour rediriger une page du style article=Saint_ Germain___Tourist=34.html vers article-Saint_ Germain___Tourist-34.html

mais je n'y connais rien en rewriting rules.

Merci pour votre aide


Philippe

#2 Utilisateur non-connecté   Dan 

  • Webmaster
  • Icône
  • Voir le blog
  • Voir la galerie
  • Groupe : Direction
  • Messages : 20 454
  • Inscrit : 18-août 03
  • Genre:Homme
  • Localisation:St Anne, Alderney
  • Société:Webmaster Hub Ltd.

Posté 02 novembre 2004 - 10:48

Salut Philippe, et bienvenue à bord du Hub !

Je ne m'en ferais pas si j'étais toi. Les anciennes URLs vont disparaître et Google va les laisser tomber. Pas de souci pour le contenu dupliqué, à partir du moment où plus rien ne pointe vers les anciennes (avec le = )

Dan
"Il faut être économe de son mépris, en raison du grand nombre de nécessiteux" (Chateaubriand)
0

#3 Invité_faz_*

  • Groupe : Invité

Posté 02 novembre 2004 - 10:55

Bon merci de me rassurer
j'avoue que ça m'inquiétait

Par contre ça m'intéressait quand même de faire une redirection car les visiteurs qui cliquent dans Google sur une ancienne URL se retrouvent sur la page 404 et ça le fait pas vraiment ;) n'est ce pas ? Pas bon pour l'image du site

#4 Utilisateur non-connecté   Dan 

  • Webmaster
  • Icône
  • Voir le blog
  • Voir la galerie
  • Groupe : Direction
  • Messages : 20 454
  • Inscrit : 18-août 03
  • Genre:Homme
  • Localisation:St Anne, Alderney
  • Société:Webmaster Hub Ltd.

Posté 02 novembre 2004 - 11:03

Dans ce cas, tu peux rediriger tes anciennes adresses de telle sorte:
RewriteRule (.+)=(.+)=(.+)\.html  $1.php3?id_$1=$3 [QSA,L]

;) Dan
"Il faut être économe de son mépris, en raison du grand nombre de nécessiteux" (Chateaubriand)
0

#5 Invité_faz_*

  • Groupe : Invité

Posté 02 novembre 2004 - 11:22

Merci

J'ai réussi à faire fonctionner avec

RewriteRule ([a-z]+)=([^=]*)=([0-9]+)\.html$  /$1-$2-$3\.html [QSA,L]


Ici ce qui est pas encore top c'est que article=Charles_Trenet___Le_fou_chantant=89.html par ex s'affiche dans la barre d'adresse. C'est possible d'afficher la bonne URL avec les -

Sinon ça ne fonctionne pas avec

RewriteRule ([a-z]+)=([^=]*)=([0-9]+)\.html$  /$1-$2-$3\.html [QSA,R=301,L]


Le code 301 ne veut pas passer

Ton script me renvoit une erreur 404 :(

#6 Utilisateur non-connecté   Dan 

  • Webmaster
  • Icône
  • Voir le blog
  • Voir la galerie
  • Groupe : Direction
  • Messages : 20 454
  • Inscrit : 18-août 03
  • Genre:Homme
  • Localisation:St Anne, Alderney
  • Société:Webmaster Hub Ltd.

Posté 02 novembre 2004 - 11:27

(j'avais oublié le \.html :) donc le 404 était normal )

Pour avoir un changement dans la barre d'adresse, il faut une redirection externe avec le flag R=301.
Donc, il faut que ta règle soit:
RewriteRule ([a-z]+)=([^=]*)=([0-9]+)\.html$  http://www.domaine.tld/$1-$2-$3\.html [QSA,R=301,L]

"Il faut être économe de son mépris, en raison du grand nombre de nécessiteux" (Chateaubriand)
0

#7 Invité_faz_*

  • Groupe : Invité

Posté 02 novembre 2004 - 11:47

Merci

http://www.domaine.tld/$1-$2-$3\.html


.tld c'est quoi ? moi je met .com par exemple ?

Bon ouff c'est génial :

RewriteRule ([a-z]+)=([^=]*)=([0-9]+)\.html$  http://www.francomix.com/$1-$2-$3\.html


Renvoi sur ma nouvelle URL et ça fonctionne
Un grand merci à toi Dan
Ca faisait 4 jours que j'étais coincé

Donc si je résume R=301 va dire à Google qui'l faut oublier l'ancienne url ?
Quand Google aura fait le ménage je pourrais virer ce script ?

#8 Invité_faz_*

  • Groupe : Invité

Posté 02 novembre 2004 - 11:55

Bon j'ai eu peur 2 minutes j'avais oublié d'ajouter

[QSA,R=301,L]


Mais tout est ok quand même :)

#9 Utilisateur non-connecté   Dan 

  • Webmaster
  • Icône
  • Voir le blog
  • Voir la galerie
  • Groupe : Direction
  • Messages : 20 454
  • Inscrit : 18-août 03
  • Genre:Homme
  • Localisation:St Anne, Alderney
  • Société:Webmaster Hub Ltd.

Posté 02 novembre 2004 - 11:59

Oui, le code 301 dira à Google (et aux autres moteurs) de remplacer l'ancienne URL par la nouvelle.
C'est assez simple quand on n'oublie pas qu'une redirectin externe (avec renvoi d'une entête autre que la 302) passe automatiquement par une URL complètement définie (http://....) ;)

A+

Dan

PS: TLD signifie Top Level Domain , donc à remplacer par celle qui s'applique dans ton cas ;)
"Il faut être économe de son mépris, en raison du grand nombre de nécessiteux" (Chateaubriand)
0

Page 1 sur 1
  • Vous ne pouvez pas créer de sujet
  • Vous ne pouvez pas répondre au sujet

1 utilisateur(s) dans ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)