将N个子域指向Azure中的一个Web角色

时间:2011-11-10 14:55:44

标签: azure subdomain azure-web-roles

目前我正在尝试将一个Web应用程序(ASP.NET MVC)移植到Windows Azure,并且遇到了一个问题,我不知道如何解决。

该应用程序是一个多租户。每个注册的客户都可以输入其实例的名称,并可以稍后通过theenteredname.example.com浏览该网站。此外,域在ActionFilter中用于在数据库之间切换。

我如何在Windows Azure中实现这一点?我知道我必须使用已定义的hostHeader属性定义绑定,但是作为动态生成的子域,每次用户注册并出现新的子域并重新部署时,我都必须更改服务定义。但这真的不是我想要的方式。

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

我认为问题是IIS不支持子域通配符映射,有关详细信息,请参阅此处Wildcard subdomains in IIS7. Is it possible to make them like it is in Apache?

如果你仍然想要这样做,那么http://www.seoconsultants.com/windows/isapi/subdomains/就有一个解决方案,但需要:

  • 更新DNS记录的能力
  • IIS Web服务器管理员访问
  • ISAPI_Rewrite组件(针对解决方案2)

答案 1 :(得分:2)

在Windows Azure中,如果您只是没有为Web角色分配任何主机标头(这是默认设置),则该网站将配置为接受任何主机标头。

您仍需要将通配符DNS配置为指向Azure实例,就像使用非Azure解决方案一样。