Jump to content

cookie traitant 2 installations sur le même serveur


Recommended Posts

Bonjour,

Je travaille en ce moment à l'agrandissement de mon catalogue de produit. J'ai donc choisis de créer 2 installations de prestashop (site1 et site2) héberger sur le même serveur et partageant les même tables clients.

Après quelques essais, je suis arrivé à ce que je voulais. Il est donc possible pour mes clients de s'inscrire et de se connecter sur mes 2 installations.

Mon problème est le suivant :
Après la création ou connexion à leur compte, mes clients sont redirigés vers une page d'accueil (index qui permet de choisir à quel site on veut accéder 1 ou 2). Cependant, ils ne sont connecté uniquement sur le site par lequel ils se sont logués.

J'aimerais donc que mes cookies traite l'ensemble de mes 2 installations et que lorsqu'il se connecte sur un des sites, ils soient aussi connecté sur l'autre.

J'espère que c'est assez clair.

Est-ce réalisable ?


Merci d'avance.

Link to comment
Share on other sites

La classe qui controle les cookie est Cookie dans le fichier /classes/Cookie.php

Si ton installation est du genre :

site1/
site2/

alors les cookies créé par défaut le sont dans le dossier "", qui correspond au dossier courant, donc site1/ pour le site n°1 et site2/ pour le site n°2.

La solution est donc de tenter de créer un cookie sur le tronc commun (le dossier parent à ces deux sites, si tel est la configuration de tes fichiers), pour cela essaye de changer la ligne 47 de Cookie.php de :

function __construct($name, $path = '', $expire = NULL)



vers

function __construct($name, $path = '/', $expire = NULL)



Le cookie sera commun au dossier "/" qui devrait être le parent de site1/ et site2/ et qui permet la connexion au deux site en même temps. Attention, ca n'est que théorique.

Attention de plus : Chaque boutique prestashop possède deux clefs pour les cookies différent, il faut que tu fasse en sorte que ce soit les même. Tu peux vérifier ça dans /config/settings.inc.pgp, le code suivant doit être commun a tes deux boutiques :

define('_COOKIE_KEY_', 'XXXXXXXXXXXXXXXXXXXXXX');
define('_COOKIE_IV_', 'YYYYYYYYYYY');



XXXXXXXXXXXXXXXXXXXXXX et YYYYYYYYYYY représentant la clef de chiffrage de tes boutiques, c'est eux qui doivent être communs.

J'espère que ça t'aidera.

Link to comment
Share on other sites

J'ai testé ta solution mais je crois que de mettre le "/" reviens au même que de le laisser blanc.

Pourtant, ton astuce me semblait logique, mais ça doit être un peu plus complexe.

Les cookie_key et cookie_IV sont identiques, je m'en suis déjà occupé au moment où j'ai relié mes 2 bases clients.


Merci pour ton aide

Link to comment
Share on other sites

  • 1 month later...

salut Gipee

c'est exactement ce que je recherche que je puisse avoir une même inscription pour 2 sites différents. comment a tu fait pour que avoir les mêmes tables clients pour les 2 sites webs.

2 as tu réussi a connecté simultanément le client aux 2 sites web lorsqu'il se connecte sur l'un ou l'autre?

pour finir, y'aurait 'il une possibilité qu'ils partagent aussi les memes poins de fidélités?

cordialement

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...