Response.Redirect()vs Response.RedirectPermanent()

时间:2013-05-14 08:03:03

标签: redirect asp.net-4.0 http-status-codes response.redirect

我是ASP.Net 4.0的新手,并且看到了一个名为Response.RedirectPermanent()的新功能。我查了几篇文章,但我无法清楚地了解Response.RedirectPermanent()Response.Redirect()的实际含义和差异。

根据Gunnar Peipman

  

Response.Redirect()向浏览器返回302,意味着请求的资源暂时移动到其他位置。 Permanent redirect表示浏览器从服务器获取301作为响应。在这种情况下,浏览器不再从旧URL请求相同的资源 - 它使用Location头提供的URL。

为什么我需要检查服务器响应,例如301302?它是如何将页面永久重定向到服务器的?

1 个答案:

答案 0 :(得分:9)

301响应(RedirectPermanent)对于SEO目的非常有用。例如,您在ASP.NET WebForms中实现了一个站点,并使用ASP.NET MVC进行了重新设计。您想通知搜索引擎页面/Catalog/ProductName.aspx成为/ products / product-name。然后将301重定向从/Catalog/ProductName.aspx设置为/ products / product-name,搜索引擎索引中的链接将被替换。 302(重定向)主要用于内部目的。例如,登录后重定向(如果在URL中设置了returnUrl)。