ptit pimousse Posté 3 Mai 2005 Posté 3 Mai 2005 (modifié) Bonjour à tous. Je souhaiterai savoir comment vous gérez vos sessions pour un site e-commerce ? Tout le monde sait que l'avantage des sessions pour un site e-commerce est de garder le panier du client pendant sa navigation sur le site mais qu'en est-il du référencement ? (le soucis étant le phpsession) Pour ma part je créer un cookie lors de l'ajout d'un article dans le panier. Ensuite je teste le cookie et s'il existe je lance la session. Mais qu'en est-il pour vous ? Modifié 3 Mai 2005 par ptit pimousse
dièse Posté 3 Mai 2005 Posté 3 Mai 2005 C'est risqué pour les clients refusant les cookies Personnellement je bloque les sessions pour les bots des principaux moteurs de recherche.
ptit pimousse Posté 3 Mai 2005 Auteur Posté 3 Mai 2005 oui j'ai aussi ce système. Cela m'interresse de savoir comment vous vous y prenez. Pour ma part voilà l'ordre des étapes 1) je lance la session 2) je teste si l'ip de l'internaute est un robot (je possède une liste des principaux moteurs) 3) je detruis la session
ptit pimousse Posté 3 Mai 2005 Auteur Posté 3 Mai 2005 (modifié) on peut appeller cela "cloaking gentil" Modifié 3 Mai 2005 par ptit pimousse
dièse Posté 3 Mai 2005 Posté 3 Mai 2005 Tu peux aussi faire le test avant de lancer la session non ? Dans la mesure où pour la plupart des internautes les identifiants de sessions ne sont pas visibles, on ne peut même pas appeler ça du cloaking .
ptit pimousse Posté 3 Mai 2005 Auteur Posté 3 Mai 2005 Tu peux aussi faire le test avant de lancer la session non ? <{POST_SNAPBACK}> oui en effet j'ai vu sur ton site que lors du premier ajout d'un article dans le panier un phpsid était passé et puis après ce paramètre n'apparait plus; cela me rassure je me demandais si c'etait normal (j'ai la même chose sur mon site).
ptit pimousse Posté 3 Mai 2005 Auteur Posté 3 Mai 2005 au passage je n'utilise pas des paramètres tels que ini_set('session.use_trans_sid', false); pour supprimer de l'url le nom de la session et sur ma config php il est actif. Mais aucun problème pour moi. Je souhaiterai juste savoir comment vous faites de votre côté, histoire d'elargir ma vision sur ce problème épineux : e-commerce/session/référencement
samy Posté 3 Mai 2005 Posté 3 Mai 2005 comment faites vous pour bloquer les sessions lors d'un passage d'un IP Bot ?
dièse Posté 3 Mai 2005 Posté 3 Mai 2005 j'ai vu sur ton site que lors du premier ajout d'un article dans le panier un phpsid était passé et puis après ce paramètre n'apparait plus; cela me rassure je me demandais si c'etait normal (j'ai la même chose sur mon site). <{POST_SNAPBACK}> En fait j'utilise des headers php, pour ne pas perdre le SID avec les headers je le rajoute à l'url.
rikaix Posté 3 Mai 2005 Posté 3 Mai 2005 (modifié) Bonjour, la contrib "SEO ultimate url"permet de régler (via l'admin) pas mal de soucis, et est top pour le référencement, couplé à "header tag controller" Pour ma part les sessions sont désactivées. Eric ooops j'avais lu Oscommerce à la place de Ecommerce, ce que j'ai écris concerne Oscommerce. Modifié 3 Mai 2005 par rikaix
dièse Posté 3 Mai 2005 Posté 3 Mai 2005 (modifié) comment faites vous pour bloquer les sessions lors d'un passage d'un IP Bot ? <{POST_SNAPBACK}> Tu détectes les bots soit grâce à leur ip soit grâce à leur USER AGENT. Si tu détectes un bot tu ne démarres pas la session. par exemple : if(!eregi("googlebot", $_SERVER["HTTP_USER_AGENT"])){ session_start(); } Modifié 3 Mai 2005 par dièse
samy Posté 4 Mai 2005 Posté 4 Mai 2005 (modifié) Tu détectes les bots soit grâce à leur ip soit grâce à leur USER AGENT. Si tu détectes un bot tu ne démarres pas la session. par exemple : if(!eregi("googlebot", $_SERVER["HTTP_USER_AGENT"])){ session_start(); } <{POST_SNAPBACK}> il y a un risque de se faire dégager par Google pour de tels pratiques (je parle uniquement des sessions) ? Modifié 4 Mai 2005 par samy
Dan Posté 4 Mai 2005 Posté 4 Mai 2005 il y a un risque de se faire dégager par Google pour de tels pratiques (je parle uniquement des sessions) ? Absolument pas... c'est même conseillé par GoogleGuy. Par exemple, sur la page Outils du Hub j'utilise les sessions pour les domaines sur lesquels on calcule l'indice Yoovi. Mais pour que cette page soit tout de même indexée, j'utilise ce type de code pour éviter le démarrage de session si le visiteur est un robot. $spiders = array( "Googlebot", "crawler", "Slurp", "Fast", "ia_archiver", "Scooter", "Robot", "VoilaBot", "W3C", "ZyBorg", "D*****", "xecho" ); $from_spider = false; foreach($spiders as $Val) { if (eregi($Val, $_SERVER["HTTP_USER_AGENT"])) { $from_spider = true; break; } }// Session ini_set("session.use_trans_sid", "0");if(!$from_spider) { session_start();// suite du code ...} Ca n'empêche pas cette page d'avoir un PR6
samy Posté 4 Mai 2005 Posté 4 Mai 2005 (modifié) Est-ce que le fait d'avoir des sessions dans l'url empêche l'indexation régulière de Google ? Je m'explique : Google indexe les pages de mon site qui ont des sessions mais ces indexations sont beaucoup moins nombreuses que les autres pages qui n'en contiennent pas. Donc un problème de mise à jour non régulière des pages en question. Est ce que le fait d'utiliser cette méthode va augmenter le nombre de passages des bot sur ces pages ? Modifié 4 Mai 2005 par samy
Dan Posté 4 Mai 2005 Posté 4 Mai 2005 Disons que le fait de ne pas avoir la variable de session dans l'URL va éviter que certaines pages tombent dans la trappe du filtre "contenu dupliqué" vu que tu n'auras plus qu'une URL pour une page... C'est de toute manière conseillé par Google...
ptit pimousse Posté 4 Mai 2005 Auteur Posté 4 Mai 2005 Merci pour ces réponses constructives :-) // Session ini_set("session.use_trans_sid", "0"); Cette ligne de commande tu le fais seulement pour les robots ou pour tout internaute. J'avais essayé de passer par cette ligne de php mais le soucis majeur est si l'internaute est un vrai client et qu'il ne possède pas les cookies là euh
ptit pimousse Posté 4 Mai 2005 Auteur Posté 4 Mai 2005 bon j'ai trouvé une solution qui me semble plutot pas mal au lieu de tester à chaque page si l'internaute est un robot et donc perdre un peu de temps voire beaucoup si on a une liste de robots à rallonge donc voilà le code pour ceux que cela interresse : $spider = false;//si on a pas de session on test //ce test est exécuté une seule foisif(!session_id()){ //on detecte les robots}//c'est un robotif($spider){ ini_set("session.use_trans_sid", "0");//c'est un client}else{ session_start();} Voilà là c'est la
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant