2010-11-16 6 views
3

Nous sommes dans un environnement à charge équilibrée, l'équilibreur de charge est www.domain.com, et nous avons 4 serveurs qui sont équilibrés en charge à l'aide de sessions SQLServer pour .NET ... www1 , www2, etcPartage de session dans une ferme web avec ASP classique

Le problème est que nous avons aussi des choses ASP héritées dont nous avons besoin pour continuer à fonctionner une fois que nous avons éteint Sticky IPs sur l'équilibreur de charge. Donc, notre idée était dans les rares endroits où ASP était nécessaire, nous allions coller l'utilisateur à un serveur spécifique qui a été décidé lors de la connexion.

Par exemple.

1) L'utilisateur se connecte au site .NET
2) Le site .NET trouve quel serveur a traité la demande de connexion et écrit l'authentification ASP sur ce serveur.
3) Le nom du serveur est stocké dans la variable
4) Chaque fois que l'utilisateur accède à ASP, nous utilisons la variable de nom de serveur pour s'assurer qu'il se retrouve sur le serveur qui a son authentification et sa session. Le problème est que puisque la demande de connexion est simplement à l'équilibreur de charge, la session n'est pas là lorsque nous dirigeons l'utilisateur vers www3.domain.com/blah.asp parce que c'est un domaine différent de www.domain .com. Donc, je pense que nous cherchons un moyen de partager des sessions à travers les domaines, mais avec une petite torsion, je suppose.

Toute aide est appréciée, et j'espère avoir transmis le problème clairement.

Répondre

0

Vous pouvez utiliser comme domaine de votre cookie de session, le « domain.com » et non le « www.domain.com », de sorte que le cookie peut être lu à partir www1.domain.com, www2. domain.com etc.

Sur le web.config:

<authentication mode="Forms"> 
    <forms path="/" domain="domain.com" ..... /> 
</authentication> 
+0

Merci, c'est un bon début! Nous avons essentiellement essayé de reproduire ce que cela fait avec une solution personnalisée, D'oh! Cela dit, notre site est mondial, y a-t-il un moyen de gérer .com, .co.uk, etc? Un caractère générique peut-être? –

+0

@ Rco8786 Si votre changement d'URL complet est trop compliqué, je pense qu'il est préférable de faire une nouvelle question, l'idée générale est d'utiliser un iframe, ou quelque chose de similaire que vous obtenez le login du site de base . – Aristos

Questions connexes