我听说如果您的网站有两个网址,即http://yoursite.com
和http://www.yoursite.co
m,它会影响您的SEO和网页排名。相反,应该从http://
永久重定向到http://www
。它是否正确?ASP.NET 4.0中的永久重定向
现在我已经看到所有文章显示如何在IIS中执行它。但是我无法访问IIS。
任何人都可以告诉我它是如何在代码后面或其他任何方法完成的,以及正确的方法是什么?
我听说如果您的网站有两个网址,即http://yoursite.com
和http://www.yoursite.co
m,它会影响您的SEO和网页排名。相反,应该从http://
永久重定向到http://www
。它是否正确?ASP.NET 4.0中的永久重定向
现在我已经看到所有文章显示如何在IIS中执行它。但是我无法访问IIS。
任何人都可以告诉我它是如何在代码后面或其他任何方法完成的,以及正确的方法是什么?
您的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."));
}
}
完整的域名重定向像你提到在IIS级别最好做了一个,但如果你不能够配置IIS您可以使用Response.RedirectPermanent,这是ASP.NET 4.0中的新增功能。这将使用301(永久)状态码重定向,而不是标准Response.Redirect使用的302(对象移动)状态码。
你可以做的是在你的Global.asax“Application_BeginRequest”中放入一些东西,它检查正在使用的URL以及可能使用Response.RedirectPermanent重定向到你想要的URL。这有点破解,但我认为它会在一个捏。
当做永久重定向搜索引擎更新他们的链接缓存,所以如果301尝试访问yoursite.com并重定向到www.yoursite.com时返回,它将更新索引链接,就像302返回它不会更新索引 – DSharper 2011-04-07 06:09:31
的Response.Redirect将使用302个状态码,而如果你没有这基本上但具有的Response.RedirectPermanent(见我的答案),它会用301 – nizmow 2010-10-28 01:51:53
@nizmow编辑使用永久重定向 – 2010-10-28 01:52:44
感谢正确重定向。因此,如果我现在这样做,搜索引擎不会受到任何惩罚。我的网站是从过去的2年。 – Goliath 2010-10-28 01:57:33