ASP.NET多租户应用程序

问题描述:

我有一个Asp.net应用程序3.5。我希望能够允许多个/不同的客户端访问相同的应用程序,但使用不同的URL。我已经设法配置数据库来允许这个。 所以这里是主要部分。 我想举办我的领域的应用说...ASP.NET多租户应用程序

wwww.myapplication.com

然后让不同的客户端访问使用

1)WWW相同的应用程序.clientOne.myapplication.com
2)www.clientTwo.myapplication.com

  • 此外客户端亚结构域即(clientone.myapplication.com和clienttwo.myapplication.com) 应当通过在注册所述客户端自动创建。

我如何能实现this..Your帮助将不胜感激

的我多么希望我的应用程序的工作是 www.quickschools.com

嗨,大家好,我终于找到了我想要的解决方案,所以我想我会与大家分享我的发现。事实证明,我需要从另一个运行的Asp创建一个Web应用程序。净Web应用程序(从C#代码)

tutorial by Robbe Morris是真正有用的,如果你需要得到这个

开始,你可能想看看另一篇文章是this one

感谢所有帮助。

具有不同的URL使用相同的应用程序一个很好的例子,我会使用“301重定向”子域名。我不确定如何创建这些子域名的Web应用程序。

+0

这将如何工作。请记住客户仍然应该使用他的首选子域(始终) – lafama 2010-11-04 19:35:52

+0

这是行不通的。用户将被重定向到另一个(子)域。 – Ivo 2010-11-04 19:38:58

我认为要做到这一点的方法是使网站服务器上的默认网站即进行配置,以便所有的请求IP打这个网站(除非标题另一个网站,明确地寻找它匹配)的服务器。您只需在IIS设置(仅限IP地址和端口号)上指定标头即可 - 只能对服务器上的每个IP地址/端口组合的一个站点执行此操作。

然后查看网站中的请求url以确定请求哪个域。

这样就没有必要到“创造”的子域...但你确实需要拒绝所有的请求,你不想认域。

如果你不能做到这一点,那么你就需要调整从应用IIS元数据库 - 不是不可能的 - 而是一个非常危险的,可能是一个坏主意。

常见的情况是,你将有账户开通过程中配置为每个新租户的一个新的虚拟网站。请参阅Creating a New Virtual Server关于如何以编程方式实现此功能。有些人虽然争论(有说服力的论点......),为每个租户启动一个appdomain是浪费资源,应该在检查HOST头的应用程序中使用路由,请参阅Multi-tenant ASP.NET MVC – Introduction

配置IIS/ASP以响应租户子域是非常简单的部分。真正的问题将是为您的租户配置DNS,这取决于您的DNS解决方案。