5

有人有将域映射到 MVC 区域的经验吗?

这是我们的情况:

旧系统(仍然有效,但很快会重定向到新商店):

www.example.com - 我们发送流量的主要站点
store.example.com - 我们的商店站点,它是一个完全独立的站点,在谷歌中被索引

新系统:

www.example.com - 与以前相同的站点
www.example.com/store - 新商店站点 - 建在 ASP.NET MVC 区域中

因为商店是一个单独的域,谷歌在搜索结果中给它一个单独的条目。我想在将来保留这个好处,但想知道是否有一种将域(store.example.com)映射到 MVC 区域的好方法,或者它是否会比它的价值更麻烦。

PS。我不想保留现有的索引 - 它是一个完全独立的存储,所以这是不可能的。我只想重定向到新商店中的相应页面。我只是试图不因 SEO 目的而失去两个域的好处。

4

1 回答 1

5

我会在 ASP.NET 或 IIS7 应用程序和请求路由 (ARR) 中使用 URL 重写来将传入的 store.example.com/... 请求更改为 example.com/store/...。

MVC 对此没有任何问题——它除了新的 URL 什么都看不到,它只会为新的布局生成链接。

其他选择:

  1. 为 store.example.com 创建一个网站,它只为每个页面执行通配符 301 重定向到新站点上的相应页面。

  2. 如果 URL 根本不重叠,将旧域指向新的 MVC 站点并为每个操作添加重复的路由,例如shop.example.com/info.aspx?item27可能有一个路由"/info.aspx/{pathinfo*}"......它加载一个知道如何处理旧 URL 参数并且可以执行重定向到新操作。

我有一些站点,其中有许多 URL 映射到同一个 Action - 事实上,曾经用于页面的每个旧 URL 今天仍然有效,甚至包括现在由 MVC Action 提供的旧 .ASPX URL。一些旧版 URL 使用 301 响应进行处理,其他在网站上合法地具有重复内容的其他 URL 将正常处理,但该页面还包含一个规范 URL,以指出哪个是首选 URL。

于 2010-04-16T06:53:46.640 回答