2010-10-28 107 views
2

我听说如果您的网站有两个网址,即http://yoursite.comhttp://www.yoursite.co m,它会影响您的SEO和网页排名。相反,应该从http://永久重定向到http://www。它是否正确?ASP.NET 4.0中的永久重定向

现在我已经看到所有文章显示如何在IIS中执行它。但是我无法访问IIS。

任何人都可以告诉我它是如何在代码后面或其他任何方法完成的,以及正确的方法是什么?

回答

1

您的Global.asax可以使用类似的东西里面:

protected void Application_BeginRequest(object sender, EventArgs e) 
{ 
    if (!(Request.Url.AbsoluteUri.ToLower().Contains("www"))) 
    { 
     Response.RedirectPermanent(Request.Url.AbsoluteUri.Replace("http://", "http://www.")); 
    } 
} 
+0

的Response.Redirect将使用302个状态码,而如果你没有这基本上但具有的Response.RedirectPermanent(见我的答案),它会用301 – nizmow 2010-10-28 01:51:53

+0

@nizmow编辑使用永久重定向 – 2010-10-28 01:52:44

+0

感谢正确重定向。因此,如果我现在这样做,搜索引擎不会受到任何惩罚。我的网站是从过去的2年。 – Goliath 2010-10-28 01:57:33

2

完整的域名重定向像你提到在IIS级别最好做了一个,但如果你不能够配置IIS您可以使用Response.RedirectPermanent,这是ASP.NET 4.0中的新增功能。这将使用301(永久)状态码重定向,而不是标准Response.Redirect使用的302(对象移动)状态码。

你可以做的是在你的Global.asax“Application_BeginRequest”中放入一些东西,它检查正在使用的URL以及可能使用Response.RedirectPermanent重定向到你想要的URL。这有点破解,但我认为它会在一个捏。

+0

当做永久重定向搜索引擎更新他们的链接缓存,所以如果301尝试访问yoursite.com并重定向到www.yoursite.com时返回,它将更新索引链接,就像302返回它不会更新索引 – DSharper 2011-04-07 06:09:31