asp.net mvc 中的子域两个单独的网站

subdomain two separate websites in asp.net mvc

我希望得到您的指导。

我正在尝试建立一个包含两个 "players" 的网站(我想这可以翻译成 "roles"?)。一位玩家 "consumer",第二位玩家 "supplier"。 两者都通过相互(sql 服务器)数据库进行交互。 现在我希望每个玩家都有完全独立的系统,具有完全不同的身份验证机制。 但是,我希望将消费者系统作为主域的子域,即,我希望将消费者系统置于 'mydomain.com' 下,并将供应商系统置于 'supplier.mydomain.com' 下。 但是,我不知道如何从技术上做到这一点?我可以在我的解决方案中创建另一个 Web 项目,将其命名为 'suppliers' 并让它包含供应商系统的所有功能吗? 或者我应该为主项目中的供应商功能创建单独的控制器吗?

第一个选项对我来说听起来最 "clean",但是,我如何根据子域将用户从主要(消费者)网站路由到供应商网站?

如果我选择第二个选项,我如何确保认证为客户的用户将无法作为供应商执行?

这可能是很常见的任务,有什么好的教程或示例吗?

这个问题,所以用"Area" = https://msdn.microsoft.com/pt-br/library/ee671793(v=vs.100).aspx

您将创建两个单独的 IIS 应用程序 - 一个用于您的消费者,另一个用于您的供应商。

然后您将每个主机 headers 设置为您所需的域和子域。然后 IIS 将负责将 URL 路由到您单独的应用程序。 IIS主机设置说明headers这里https://technet.microsoft.com/en-us/library/cc753195.aspx

至于管理应用程序代码,如果您想要完全分离,我建议创建三个 Visual Studio 项目:

  1. 面向消费者的 Web 应用程序
  2. 供应商的 Web 应用程序
  3. Class 共享代码库 - 数据库逻辑等

然后您就可以独立开发和部署每个 Web 应用程序。

在教程方面,有很多可用的,这里有一些可以帮助你: