2009-06-19 4 views
1

J'ai une application ASP.Net MVC qui sert les pages de l'utilisateur avec l'URL comme -service différentes pages que différents noms de domaine dans IIS (6 ou 7)

www.myapp.com/user/rob/index,
www.myapp.com/user/rob/article/1

et

www.myapp.com/user/scott/index,
www.myapp.com/user/scott/article/1

maintenant je veux celui-ci applicatio n servir des pages à deux domaines différents de l'extérieur. Comme -

www.RobWebSite.com/Index
www.RobWebSite.com/article/1

www.scottBlogSiteNoOne.com/Index
www.ScottBlogSiteNoOne.com/article/1

quel type d'installation/redirections/proxy je vais devoir configurer ainsi quand l'utilisateur tape le nom de domaine publié (www.RobWebSite.com) il traduit en interne à mon application en tant que (www.myapp.com/user/rob/). Je veux garder l'url dans le navigateur le même que ce qu'ils ont tapé, alors que les changements de paramètres de chaîne de caractères.

Merci et salutations,
Ajay

Répondre

2

nom de domaine de chaque utilisateur aura besoin d'un enregistrement CNAME dans leur DNS qui pointe vers myapp.com. (Google utilise les enregistrements CNAME pour pointer les noms de domaine personnalisés vers les blogs Blogger.com, ce qui semble être une bonne solution.)

Ensuite, votre code doit examiner l'objet Request pour identifier le nom de domaine utilisé et faire une recherche pour trouver à quel utilisateur le domaine appartient. Cela ne se traduirait pas vraiment par myapp.com/user/name/. Ce serait utiliser le nom de domaine pour déterminer l'utilisateur au lieu de l'analyse de route que vous feriez normalement avec MVC.

Je ne suis pas sûr à 100% que l'objet Demande vous donnera le bon nom de domaine. Vous devrez l'essayer.

+0

merci pour la réponse. Pouvez-vous m'indiquer toute information supplémentaire/matériel qui pourrait m'aider à décider cela? Merci. – Ajay

+0

merci. Cela m'a beaucoup aidé. – Ajay

0

Vous pouvez également configurer votre code de sorte que vos URL spécifient des chemins relatifs plutôt que des URL absolues. Cela gardera le même nom de domaine dans le navigateur et améliorera les performances.

Questions connexes