Changement structure url : éviter 404 et perte de rèf

Nouveau WRInaute
Bonjour a toutes et a tous.

J'administre en ce moment un site et je voudrai changer la structure des urls pour optimiser un peu le ref.
Je prendrai pour exemple une page d'un des annuaires du site comprenant des fiches nominatives.

Actuellement, les url sont du type : www.machin.com/annuaire-blabla,consulter,fiche=27.html
Perso, je suis pas fan !
Je voudrai donc les passer sous la forme : www.machin.com/annuaire-blabla-Nom-Prenom-27/

Cet annuaire contient disons 1 millier de fiches. Impossible donc de rediriger ça avec des 301 par htaccess puisque je veux faire apparaitre le nom prénom sur chaque adresse des fiches.

comme solution, j'ai pensé a rediriger toute les anciennes adresses vers un script php qui interrogerai ma BDD afin d'en tirer les noms et prénoms nécessaires aux nouvelles adresses. Une fois tous les élements acquis, le script redirigerai vers la nouvelle adresse.

j'aimerai avoir quelques avis avant de mettre en place ceci. Peut être existe t il des solutions plus simples ? plus efficaces ? Je ne veux surtout pas perdre le référencement actuel de chaque page.

En espérant avoir été clair ;)
Merci d'avance !

TeChn4k
 
Nouveau WRInaute
Les redirection php ne pose pas problème par rapport a google ?
Et pour ce qui est des 2 redirections ? (vers le script puis vers la nouvelle adresse )
 
WRInaute accro
TeChn4K a dit:
Et pour ce qui est des 2 redirections ? (vers le script puis vers la nouvelle adresse )

Tu n'en as qu'une à faire ;)

Dans la page php qui gère les urls de ce type: www.machin.com/annuaire-blabla,consulter,fiche=27.html (certainement un url rewriting pour consultation.php?fiche=$1), tu fais le test suivant:

--> 1. choper en db "nom" et "prenom" se rapportant à "27"
--> 2. nettoyer pour l'url rewriting
--> 3. déterminer l'uri canonique (/annuaire-blabla-nom-prenom-27/)
--> 4. comparer l'uri canonique à l'uri en cours ($_SERVER['request_uri'])

--> 5. s'ils sont différents --> redirection vers l'uri canonique.
 
WRInaute passionné
le plus simple est d'avoir deux règles de réécriture qui permettent de faire marcher les deux type d'url.

Ensuite en début du script tu détermines la nouvelle url avec une petite fonction et tu fais une redirection si l'url est différente.
cette méthode évite beaucoup de problèmes de contenu dupliqué.

l'explication est ici : -http://www.urlrewriting.fr/article-08,07,11,Eti@-Redirection-10.html

edit : grillé
 
Nouveau WRInaute
Merci beaucoup a vous deux !!
En effet c'est plus simple comme ca !

Je mettrai juste la condition (si url différente) au tout début pour éviter les traitements en base si l'adresse est bonne. ;)

Derniere question : / ou html en f'in d'url ?
/ permet de donner un peu plus d'importance au autres mots vu qu'il y en a un de moins ?

Sinon encore merci :)
 
WRInaute accro
De rien ;)

TeChn4K a dit:
Derniere question : / ou html en f'in d'url ?
/ permet de donner un peu plus d'importance au autres mots vu qu'il y en a un de moins ?

Théoriquement oui, il y a une différence et un avantage supposé aux urls les plus courts, mais c'est vraiment minime ;)
 
WRInaute impliqué
TeChn4K a dit:
Derniere question : / ou html en f'in d'url ?
/ permet de donner un peu plus d'importance au autres mots vu qu'il y en a un de moins ?

L'extension du fichier (.html) n'est pas un mot comme les autres. Supposer que google va traiter de la meme façon les deux urls suivantes me parait assez farfelu:

mot1-mot2-mot3-html

mot1-mot2_mot3.html

dans le deuxième cas, .html sera ignoré car il s'agit du type du fichier, pas de son nom.
 
Discussions similaires
Haut