我找到了从www重定向到非www的解决方案,但反之亦然。有没有“简单”的解决方案呢? www或非www有什么区别?我应该使用哪一个?是不是因为版本较短?我只使用一个版本的原因是因为SEO。
答案 0 :(得分: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
中的一个选项答案 1 :(得分: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));
}
}
我认为使用与否之间不会有区别,但最好只使用一个版本。此外,Google网站站长工具还提供了首选域名设置。我更喜欢使用非www。请stackoverflow.com:)