asp.net-mvc - 如何使用 1 个解决方案实现对 2 个网站的支持

标签 asp.net-mvc asp.net-mvc-3 visual-studio-2010 razor

平台:ASP.NET 4.0、MVC 4 RC、VS 2012

更新:我自己已经回答了我的问题。请参阅下面我的回答帖子

我想做的事情:

我目前有一个名为 www.a.com 的网站,该网站针对特定的客户群。我想创建一个名为 www.b.com 的变体,它针对不同的分割市场。

但是,在后台,a 和 b 的技术和代码大部分是相同的,只有一些页面/内容有所不同,具体取决于用户是使用域 a 还是 b 进行浏览。对于我来说,为此目的创建一个新项目完全没有意义。

但是,我根本不清楚应该如何实现 www.b.com 以及它在 MVC 中的流程。当某人来自 www.b.com 时,如何呈现不同的主页,浏览许多与 www.a.com 相同的页面,但有些页面根据 URL 是用于 a 还是 b 而呈现不同。

非常感谢一些指示、提示和示例。

更新:我自己已经回答了我的问题。请参阅下面我的回答帖子

最佳答案

如果您依赖域名,那么您将对可能更改的信息进行硬编码。不要这样做,而是基于子域来进行。您仍在对一些信息进行硬编码,但子域方式更灵活,并且在开发中更容易处理它。

您可以从每个域重定向到正确的子域。

例如

www.a.com # => redirects to site_a.somedomain.com
www.b.com # => redirects to site_b.somedomain.com

然后,您可以构建一个依赖子域(site_a 或 site_b)来确定要呈现的布局的网站。

这样,即使域名发生变化,您的网站仍然可以工作。

关于asp.net-mvc - 如何使用 1 个解决方案实现对 2 个网站的支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11278539/

相关文章:

c# - 发生异常时 Visual Studio 和 Process 卡住(我认为)C#

visual-studio - Visual Studio 2010 Web 性能测试/负载测试/编码的 UI 测试。任何人真的使用这些?

c# - 随机 HTTP 错误 403.14 - 禁止

jquery - ASP.NET MVC3 - DropDownList 使用 jQuery 刷新模型

javascript - Razor MVC 5.2.3 如何使用ajax post调用OnFailure

c# - 异步调用操作方法不会加载 View

asp.net-mvc - ASP.Net MVC 3 显示模板和编辑器模板自定义位置,如何?

.net - 不要为复杂解决方案中的每个 Web 项目启动 Visual Web Developer 服务器

asp.net-mvc - 我可以跳过 ASP.NET MVC 中的 Action 过滤器吗?

c# - 使用 EF4 "Code First"和存储库进行单元测试