8 votes

Comment configurer des jokers IIS pour les sous-domaines de compte (comme Basecamp) ?

En effet, je travaille sur une application SaaS où je veux donner aux abonnés leur propre sous-domaine pour accéder à leurs informations (dans le code, je vais extraire la première partie du sous-domaine pour l'utiliser comme nom de compte), similaire à la façon dont Basecamp et autres fonctionnent. Par exemple, un abonné pourrait avoir l'URL acme.myapp.com. Étant donné qu'il pourrait y avoir des centaines d'abonnés, je ne peux pas simplement ajouter un en-tête d'hôte différent pour chaque client.

Apache vous permet de spécifier un joker (*) et redirigera acme.myapp.com vers myapp.com, où je peux effectuer ma logique pour récupérer le nom du compte de l'utilisateur basé sur le sous-domaine. Je ne suis pas sûre de comment faire cela automatiquement avec IIS (Cela fait un moment que je n'ai pas eu à configurer IIS pour autre chose qu'un seul site web).

De plus, y a-t-il des dispositions spéciales que je dois prendre pour y parvenir ? Lorsque mon application sera prête et que je chercherai un hébergement pour celle-ci, aurais-je besoin de quelque chose de spécifique de la part de l'hébergeur qui limiterait mes choix ? J'envisageais également d'utiliser Windows Azure pour profiter du cloud - pourrais-je toujours le faire si je choisis Azure comme plateforme d'hébergement ?

5voto

Mat Points 2512

Comme Joe l'a mentionné, vous feriez cela plus avec DNS qu'avec IIS.

IIS ne prend pas en charge les domaines génériques *.domain.com. Au lieu de cela, vous créeriez un site dans IIS sans en-têtes d'hôte, qui répondrait à toutes les demandes sur cette IP qui n'ont pas été capturées par d'autres sites ayant des en-têtes d'hôte. Ensuite, vous créeriez votre entrée DNS générique pour pointer vers l'IP de ce site et vous auriez terminé.

2voto

joeqwerty Points 106914

Si je vous comprends bien, vous pourriez utiliser le DNS pour cela. En supposant que myapp.com soit votre domaine, alors dans la zone DNS de myapp.com, ajoutez simplement un enregistrement CNAME (acme) qui pointe vers l'enregistrement A de votre site web (www.myapp.com). Cela les enverra vers votre site web principal, où votre code prendra le relais et les redirigera vers l'application appropriée.

Vous pourriez également utiliser un enregistrement DNS générique (*) qui interceptera tout, comme acme.myapp.com, joeschmoe.myapp.com, etc.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X