【问题标题】:htaccess to redirect to dead links to 404htaccess 重定向到 404 的死链接
【发布时间】:2015-06-30 12:48:10
【问题描述】:

我们最近从一个域迁移到另一个域。我们成功地将所有有效 URL 重定向到新站点上的对应 URL。但是,有很多在旧域上有效的链接在新域上根本不存在。 (例如,页面/链接已过时,因此我们没有迁移它们)

例如,我们在旧域上有一个博客组件,它生成了很多动态链接,例如 /blog/category/abc 和 /blog/tag/xyz。我们在新域中不再有此博客组件。

使用 htaccess,确保 Google 和其他 SE 正确意识到这些页面/链接不再存在的最佳方法是什么?

【问题讨论】:

    标签: apache .htaccess mod-rewrite redirect http-status-code-404


    【解决方案1】:

    要发送的正确 http 状态代码是 410 Gone 代码。引用RFC2616(强调我的):

    请求的资源在服务器上不再可用,并且没有 转发地址是已知的。这种情况预计 被认为是永久的。具有链接编辑功能的客户端 应在用户批准后删除对 Request-URI 的引用。如果 服务器不知道或无法确定是否 不是条件是永久的,状态码 404(未找到)应该 改为使用。除非另有说明,否则此响应是可缓存的 否则。

    【讨论】:

    • 感谢您的反馈。我可以使用 htaccess 将符合条件(例如 /blog/tag/ )的链接批量重定向到 410 错误吗?如果是这样,正确的重定向/重写是什么?
    • 您不会重定向(即使用 301 或 302 状态代码将浏览器发送到页面)来提供 410 状态代码。您可以在 mod_alias 中使用 Redirect 或 RedirectMatch 指令,并将 'gone' 作为第一个参数。这实际上不会导致重定向发生,但会提供 410 状态代码。见serverfault.com/questions/104242/…
    猜你喜欢
    • 2016-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-11
    • 1970-01-01
    • 2011-12-05
    • 2013-05-17
    相关资源
    最近更新 更多