Redirection page d'accueil et référencement

Fermé
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 3 août 2009 à 21:13
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 - 4 août 2009 à 22:15
Bonjour,

Je suis en train de concevoir un site international. Pour gérer les différentes langues, je choisis la plus appropriée selon certains critères (cookie présent, accept-language du client, paramètre get, ...) et redirige le visiteur. Par exemple une adresse du type : http://mon.site/index.php sera redirigée vers http://mon.site/index.php/fr/ ou http://mon.site/index.php/en/ selon les préférences de l'utilisateur.

J'aurais voulu savoir si cette redirection est néfaste en terme de référencement ou pas.

Merci d'avance pour vos réponses.
A voir également:

7 réponses

Utilisateur anonyme
4 août 2009 à 00:43
Bonsoir oui

pour chaque page faire une base de meta tag different sa va te prendre beuacoup de temp fait le mais en Un coup utilise au plus simple IZISPOT et apres modifie les codes XHTML
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 10:13
Euh... pas compris, je fais une redirection HTTP, pas par meta-tags, c'est bien trop laid ! Et je ne vois pas en quoi utiliser Izispot peut m'aider dans mes redirections...
0
Utilisateur anonyme
4 août 2009 à 01:10
C'est n(importe quoi ce que tu dis death-unit !

Pour être concis, le référencement ne changera pas si il y a redirection aprés que l'utilisateur soit entré sur le site. A l'exemple de facebook qui utiilise un systeme similaire.
Aprés, tu devrais modifier chaque balise html en correspondance avec la langue pour optimiser tout ca ;)

Bon courage !
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 10:26
Merci pour ta réponse 2Pulse, mais je ne suis pas sûr d'avoir bien compris...
Dans mon cas, si le visiteur arrive sur http://mon.site/index.php/une/page , il sera redirigé vers http://mon.site/index.php/fr/une/page . Si j'ai bien suivi ce que tu dis, ce n'est pas une bonne méthode puisque la première réponse renvoyée à l'utilisateur est une redirection ?

Dans ce cas il vaudrait mieux que je génère la bonne version de manière transparente (on me demande http://mon.site/index.php/une/page, je renvoie la page dans la bonne version sans rediriger), mais cela signifierait que la même URL pourrait représenter des ressources différentes, en fonction des préférences utilisateur, et cela ne me plaît pas...

Y a-t-il une solution élégante ?

Autre question : pour ce genre de redirection, vaut-il mieux utiliser un code de retour 300 (Multiple Choices), 301 (Moved Permanently), 302 (Moved Temporarily), 303 (See Other) ? Comment fonctionne le code de retour 300, qui semble correspondre à ma situation (i.e. comment forger une réponse de ce type et comment se passe la résolution du choix) ?

Merci de bien vouloir éclairer ma lanterne ;-D
0
bg62 Messages postés 23603 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 24 mai 2024 2 366
4 août 2009 à 12:40
Euh... pas compris, je fais une redirection HTTP, pas par meta-tags

ah bon tu peux nous expliquer comment car c'est surement intéressant cette nouvelle méthode ... totalement inconnue !
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 14:40
Euh... Je me suis peut-être mal exprimé : je redirige le client de manière propre en renvoyant un code de retour explicite au navigateur et un en-tête Location spécifiant l'adresse de la ressource demandée. Ceci grâce au code suivant en PHP :
header( 'HTTP/1.1 301 Moved Permanently' );
header( 'Location: http://nouvelle.adresse/' );
Il me semble que cette méthode est très connue et elle repose uniquement sur les fonctionnalités du protocole HTTP.
0
Utilisateur anonyme
4 août 2009 à 13:39
Ce qu'il faut faire à mon avis :

1) Avoir une url fixe (www.nom.com/index.php)
2) Lorsque l'utilisateur attérit sur la page, redirige le en conséquence vers des pages style www.nom.com/fr/index.php

Aprés utilise 301 si c'est bien du mode de redirection dont tu parles.

Mais ne vaut-il pas mieux simplement utiliser un url masking qui te permettrait de garder la même structure en apparence pour faire une redirection non visible.
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 14:53
Je parlais effectivement du code de retour HTTP à effectuer pour la redirection.

Je vais préciser un petit peu l'architecture de mon application, ce sera sûrement plus clair :
- J'ai un controller frontal, index.php, qui sert de dispatcher vers mes autres controller (un par module).
- Ce dispatcher va donc appeler le bon controller en fonction de l'URL demandée après avoir fait diverses opérations d'initialisation, comme définir la langue à utiliser.
- En fonction de la langue, et des autres paramètres de l'URL, mon controller va appeler la bonne vue, qui utilisera les bonnes données.

J'ai donc déjà une forme d'url-rewriting puisque chaque adresse représente une ressource et non pas un chemin réel et que les variables GET ne seront pas passées via une query string.

Mon problème ne se situe pas au niveau de la navigation : une redirection n'est pas problématique pour l'utilisateur, mais vraiment au niveau de l'indexation : en effet Google et consorts, en arrivant sur ma page d'accueil (index.php) vont immédiatement se faire rediriger vers une version spécifique du site ('fr' par défaut, autre chose s'ils envoient des en-têtes Accept-Language). C'est cette redirection qui, selon moi, pourrait poser des problèmes au niveau de l'indexation : est-ce que les crawlers l'acceptent tranquillement, est-ce qu'ils diminuent le page rank, est-ce qu'ils refusent d'indexer la page ?

J'espère que ma requête est plus claire maintenant.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bg62 Messages postés 23603 Date d'inscription samedi 22 octobre 2005 Statut Modérateur Dernière intervention 24 mai 2024 2 366
4 août 2009 à 15:00
le pseudo est vraiment bien choisi .... :)
pourquoi faire simple quand on peut faire compliqué .... ?
si tu nous mettais une url pour comprendre ?
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 15:49
Ouais, il paraît que je suis un peu malade ^^ ! Mais en fait c'est super simple quand t'es dedans.

Des exemples d'URL :
http://mon.site/index.php/fr/produits/liste -> affiche la liste des produits en français
http://mon.site/index.php/fr/produits/188 -> affiche le produit dont l'id est 188
http://mon.site/index.php/en/accueil -> affiche la page d'accueil en anglais
http://mon.site/index.php/de/login/goodbye -> déconnecte le visiteur et lui dit au revoir en allemand

Cependant la forme de mes URL ne change pas grand chose à ma question...
0
Utilisateur anonyme
4 août 2009 à 15:04
Ok je comprends mieux.
Je pense pas que les bots/crawlers font la part des choses. Je veux dire par là que tu n'as qu'a purger ton site de meta pour robots et ne pas mettre de robots.txt sur ton serveur.
Les araignées feront leurs boulot et tu n'auras a mon humble avis aucun problème de référencement.
C'est vrai que la question mérite d'être posée mais je doute trés fortement que cela pose un quelconque souci ;)

T'inquiète pas vas ^^
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 15:51
Pourquoi devrais-je omettre les indications pour les robots ?
0
Utilisateur anonyme
4 août 2009 à 16:05
Je voulais dire par la ne pas les interdire :) Tout bêtement.
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
4 août 2009 à 22:15
Ok, merci, j'aime mieux ça ;-p
0