How to serve multiple domains with a single ASP.NE

2020-07-22 09:17发布

问题:

How to implement a mechanism (within a single ASP.NET MVC application) to ensure that:

  • if request comes on mydomain (user visits mydomain.com) -> handle using certain set of controllers
  • if request comes on otherdomain (user visits otherdomain.com) -> handle using different set of controllers

(the domains are aliased to the same web hosting)

What extension points within ASP.NET MVC should I use to ensure that the described mechanism works?

回答1:

I think you could implement a IRouteConstraint descendant that analyzes the current HttpContext and matches (or does not match) a route depending on the domain requested. Then have two different default routes in your Global.asax file, each with different constraints.

I would still prefer two applications, but it's your choice of course.



回答2:

Why not set up 2 web applications that share common code in a DLL? Each web app would be a standard MVC application.