【问题标题】:Redirect page to itself - what's the correct http status code to use将页面重定向到自身 - 要使用的正确 http 状态代码是什么
【发布时间】:2012-07-31 10:34:16
【问题描述】:

这是一个关于 Web 应用程序架构而不是编码本身的问题,但是我仍然认为它属于这里,因为它属于大多数 Web 开发人员的问题领域:

我的问题。我有一个内容不完整的页面(只有部分内容)。我不想只返回 200 响应,因为我希望明确页面上的内容只是暂时的,并且访问者 (google) 应该稍后返回以检索正确的页面。

我不确定 http 规范中是否有可用的状态代码。 我正在考虑使用 302 重定向到同一个 URI,但我不确定谷歌是否会将其视为游戏(我不明白为什么应该这样做 - 没有人会永久 302 到同一个 URI因为页面内容几乎会被忽略)。

这正是我想要的:为了让页面可以访问 - 但为了让 google 忽略该页面,请记住 URL,稍后再回来将其编入索引。

我不想使用响应为 200 的元“无索引”标签,因为我担心这会在正确的内容准备好时停止重新索引页面。

【问题讨论】:

    标签: http http-status-codes


    【解决方案1】:

    206 是部分状态代码,但这不是您在这里所做的。这就是多部分文档。您在这里拥有的是一个“正在建设”类型的页面,但只有页面中的内容会改变而不是 uri。所以正确的做法是返回 200 并让 Google 对其进行索引。

    如果您不希望它被索引,因为它还没有为公众准备好,那么像你说的那样添加一个元无索引。 Google 仍会下载该页面并对其进行解析以找到无索引但不对其进行索引。准备好后删除无索引,它将开始索引。您甚至可以通过提交包含您的页面的新 sitemap.xml 文件来提示这一点。

    这些天谷歌重新索引的速度非常快,所以不要太担心临时阻止带有元标记的页面。

    【讨论】:

      【解决方案2】:

      当内容自动更改时,Google 会重新索引页面。或者您可以在网站管理员工具中的某处强制更新。

      或者,您可以将页面 302 转到包含部分完成内容的备用地址,直到页面“完成”为止。然后把最终的内容复制到你原来的页面中,去掉302。

      【讨论】:

      • 嗯..有趣。就像 /my-url/partial/.... 我会考虑一下 - 谢谢你的想法。
      【解决方案3】:

      任何错误代码都保留用于错误条件。确实没有“此页面不是最终版本”之类的错误。您可能想要指定此页面在以后的某个时间变得过时并失效。例如,下面的代码意味着页面会立即过时:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-02-24
        • 2017-06-27
        相关资源
        最近更新 更多