【发布时间】:2016-05-31 16:10:01
【问题描述】:
我正在处理的一个项目曾经是一个内部 Intranet 应用程序,但现在它正在被移植到一个多租户 Internet 应用程序。通常,在部署任何 Web 应用程序时,我们会使用 http://webapp.company.com 格式,这种格式早在我加入之前就已经存在。
由于该项目现在是一个多租户应用程序,我正在尝试在不同的架构之间做出决定。
1) 使用客户端/租户作为主主机 url 的一部分
http://tenant.webapp.company.com
这种方法需要额外的 ssl 证书和 iis 设置
2) 将租户作为路由的一部分,租户名称将作为路由参数包含在内
http://webapp.company.com/{tenant}/my/route/url/{param}
在我看来,这种方法很“混乱”,我觉得这不是最正确的解决方案。
3) 保留http://webapp.company.com 的现有url 并在IIS 中添加特定绑定以将请求的url 指向主机位置。
当用户输入 url http://tenant.company.com 时,他们将获得位于 http://webapp.company.com 的应用程序。这种方法的问题是我们可能会部署额外的应用程序,而这是不可扩展的。
我倾向于方法 1,因为我有实施它的经验(没有额外的域)。 4 级域是否理想?关于哪种方法比另一种更好的任何想法?可能是一种新方法?任何意见表示赞赏。
【问题讨论】:
标签: asp.net-mvc iis url-routing asp.net-mvc-routing multi-tenant