3

我找到了从 www 重定向到非 www 的解决方案,反之亦然。有没有“简单”的解决方案来做到这一点?www 和非 www 有什么区别?我应该使用哪一个?仅仅是因为版本较短吗?我只使用一个版本的原因是因为 SEO。

4

2 回答 2

3

以下是一些您可能会觉得有用的背景信息:http: //www.mattcutts.com/blog/seo-advice-url-canonicalization/

http://mydomain.com实际上是一个独立于http://www.mydomain.com的域。因此,如果您在两个域上具有相同的内容,它们将被视为彼此重复。

我通过在 IIS 中设置两个站点然后执行从一个站点到另一个站点的永久 301 重定向来处理我的重定向。如果必须这样做,您也可以在代码中执行此操作,尽管这不是我的首选方法。在以下位置查看一个选项:http ://www.eworldui.net/blog/post/2008/04/25/ASPNET-MVC-Legacy-Url-Routing.aspx

于 2011-02-18T08:21:22.200 回答
2

您可以将此代码用于 Global.asax 文件中的任何 asp.net 应用程序:

void Application_BeginRequest(object sender, EventArgs e)
{
   string FromHomeURL = http://yourdomain.com;    
   string ToHomeURL = http://www.yourdomain.com;

   if(HttpContext.Current.Request.Url.ToString().ToLower().Contains(FromHomeURL))
   {
       HttpContext.Current.Response.Status = "301 Moved Permanently";
       HttpContext.Current.Response.AddHeader("Location",
       Request.Url.ToString().ToLower().Replace(FromHomeURL, ToHomeURL));
   }
}

我认为使用与不使用之间没有区别,但最好只使用一个版本。谷歌网站管理员工具也有一个首选域的设置。我更喜欢使用非www。stackoverflow.com也是如此:)

于 2011-04-07T17:28:00.693 回答