【问题标题】:Response.Redirect() vs Response.RedirectPermanent()Response.Redirect() 与 Response.RedirectPermanent()
【发布时间】:2013-05-14 08:03:03
【问题描述】:

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

根据Gunnar Peipman

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

为什么要查看301302等服务器响应?它是如何将页面永久重定向到服务器的?

【问题讨论】:

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


    【解决方案1】:

    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)。

    【讨论】:

    • 哪个更好用?
    • 视情况而定。重定向 301 更适合用于 SEO 目的。当您需要告诉搜索引擎某个页面已移动到另一个位置时。重定向 302 更适合应用程序流。例如,登录页面可能会重定向回启动它的页面。
    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 2010-11-19
    • 1970-01-01
    • 2014-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多