7
votes

Sessions partagées PHP à travers le domaine

J'ai vu quelques réponses à cela sur le SOF, mais la plupart d'entre elles concernent l'utilisation de sous-domaines, dont aucun n'a travaillé pour moi. Le commun étant que l'utilisation de session.cookie_domain , qui de ma compréhension ne fonctionnera que avec des sous-domaines.

Je suis intéressé par une solution qui traite des offres avec des domaines entièrement différents (et comprend la possibilité de sous-domaines). Malheureusement, les délais de projet étant ce qu'ils sont, le temps n'est pas de mon côté, alors je me tourne vers l'expertise et l'expérience de SOF.

Le bref du projet actuel consiste à être capable de se connecter à un site qui stocke actuellement uniquement le user_id dans la session, puis pour pouvoir récupérer cette valeur sur un autre domaine dans le même serveur Enviroment . Les données de session sont stockées / extraites à partir d'une base de données où l'ID de session est la clé primaire.

J'espère trouver un "léger wieght" et "facile" à mettre en œuvre une solution.

Le système est utile d'un modèle de conception de contrôleur de modèle de modèle interne, de sorte que toutes les demandes (y compris différents domaines) sont exécutées via un script de bootstrap unique. Utilisation du nom de domaine comme variable, cela détermine le contexte à afficher à l'utilisateur.

Une option qui a semblé avoir le potentiel est l'utilisation d'une image cachée et à l'aide de la balise Alt pour définir l'ID . Mes premières impressions suggèrent que cela semble immédiatement «trop facile» (si possible) et détrempé des défauts de sécurité. Disscuss?

Une autre option que j'ai envisagée utilise l'agent IP et l'agent utilisateur pour l'authentification, mais je pense que cela ne sera pas une option fiable en raison de réseaux partagés et de modifier les adresses IP.

Ma troisième option (et préférée) que j'ai envisagée et tout ce qui n'est pas encore vue discutée consiste à utiliser htaccess pour tromper l'utilisateur en pensant qu'elles figurent sur un domaine différent lorsqu'une Apache est la redirection; quelque chose comme

www.foo.com/index.php?domain=bar.com&controller=news/categoires/1
mais s'affiche à l'utilisateur de
www.bar.com/news/categories/1

foo.com représente le "domaine du site principal" que toutes les demandes sont exécutées et bar.com est ce que l'utilisateur pense qu'ils accèdent. La demande du contrôleur dicte la page et la visualisation demandée. Est-ce possible?

Y a-t-il d'autres options? Avantages / contre?

Merci d'avance !!!


1 commentaires

Désolé j'ai oublié de mentionner, j'exécute actuellement le système localement (avec XAMPP). J'utilise un mélange de noms de domaine locaux (fichier hôte modifié) et des domaines hébergés par Fasthost pour transmettre à mon IP. Il suffit de penser à mentionner en cas que cela affecte mes tests actuels.


3 Réponses :



-3
votes

Pour le bénéfice pour quelqu'un d'autre intéressé par cette fonctionnalité, il n'y a pas de réponse simple que j'ai peur. Google "signe unique sur" et il reviendra avec la technologie et certaines solutions avialisables.

Quant à l'utilisation de HTACCESS pour masquer le nom de domaine, cela n'est pas possible car il pourrait être utilisé pour des activités malveillantes.

J'ai maintenant mis en œuvre avec succès un système pour atteindre mes exigences.


1 commentaires

Ce n'est pas une réponse. Vous ne nous disons pas ce que vous avez fait.



0
votes
  1. Définissez un serveur de session principal (je le fais en combinaison avec Memcached)

  2. Utilisez AJAX / JSON (P) pour demander une session à partir de ce serveur, cela vous permet de partager des sessions sur plusieurs domaines

  3. réutiliser cette session


0 commentaires