MVC:如何从一个站点正确提供多个域名(每个站点的内容不同)

时间:2011-03-31 01:02:06

标签: c# asp.net asp.net-mvc-3 dns

希望迄今为止有一种“最佳实践”方法来实现这一目标。

基本上,我正在构建一个ASP.NET MVC 3站点,我想从中央数据库和服务器托管它。

我希望[domain1] .com和[domain2] .com指向这一台服务器。理想情况下,我希望这台服务器能够查看来自域1的请求,并提供与域1相关的内容(基本上是一类主题信息 - 结构的其余部分将是相同的)。如果可能的话,我希望人们不要被重定向到该域名。

我想我应该将每个域映射到特定的静态IP,通过这些IP连接到中心站点的所有连接,并以这种方式返回相关数据。

人们用.NET堆栈做了什么经验,在这种情况下是否有任何“最佳实践”需要考虑?

这可能不是那么清楚;我会在收到问题时进行修改。

提前感谢您的帮助!

- 肖恩

1 个答案:

答案 0 :(得分:3)

您要查找的术语是用于区分网站的“主机标头”。请参阅以下描述IIS行为的文章 - http://www.it-notebook.org/iis/article/understanding_host_headers.htm

其中一种方法是通过为每个站点配置适当的绑定,将IIS配置为基于主机名提供2个不同的站点(请参阅http://technet.microsoft.com/en-us/library/cc753195(WS.10).aspx)。

您还可以为同一网站上的所有域提供服务。在这种情况下,您需要检查传入请求的主机并适当地更改路由。您可能需要编写自己的路由,因为我认为MVC不支持主机开箱即用的路由。