将域映射到MVC区域

Sim*_*ver 5 iis asp.net-mvc seo domain-mapping

有人在将域映射到MVC区域方面有经验吗?

这是我们的情况:

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

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

新系统:

www.example.com - 与以前相同的网站
www.example.com/store - 新商店网站 - 内置于ASP.NET MVC区域

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

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

Ian*_*cer 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参数的Action,并且可以执行重定向到新操作.

我有一些网站,其中有许多网址映射到同一个操作系统 - 实际上,每个用于网页的旧网址今天仍然可用,甚至包括现在由MVC操作提供的旧.ASPX网址.使用301响应处理一些遗留URL,在网站上合法地具有重复内容的其他URL按正常方式处理,但该页面还包括规范URL以指出哪个是首选URL.