【问题标题】:Serve different page to google bot crawler [closed]为谷歌机器人爬虫提供不同的页面[关闭]
【发布时间】:2016-09-22 23:08:43
【问题描述】:

我有一个包含很多图像的 SPA。我想将这些图像公开给搜索引擎。所以我想创建只有机器人才能看到的“特殊”页面。这些页面将包含有关图像的元数据。

是否可以让 googlebot 抓取一个页面但将其索引为另一个页面?

【问题讨论】:

    标签: indexing seo bots googlebot google-crawlers


    【解决方案1】:

    您可以设置只有 Google bot 才能看到的页面。

    工作原理:

    您基本上设置了一个服务器,其服务类似于客户端的浏览器,它“位于”您的“真实服务器”之间,该服务器提供 HTML 和资产(JS/CSS/图像)和 Crawler Bot。这个服务器被称为 pre-render 服务器,它只将数据发送给机器人,而不是真正的客户端,因为它有自己的 URL 映射到使用它。该 URL 与您网页的任何 URL 相同,但在末尾添加了一些特殊内容(可能)。

    pre-render 服务器就像一个浏览器,所以 Javascript 被解析,并且只有在页面准备好时(你需要小心地在你的代码中的某处触发 ready 命令之后所有的 ajax 都被调用并且你的内容已经“稳定下来”,只有当这个命令被调用时,pre-render 服务器才会将内容转发给机器人,所以机器人会看到一个“静态页面”,“用勺子喂它”。

    https://developers.google.com/webmasters/ajax-crawling/docs/learn-more#what-the-user-sees-what-the-crawler-sees

    为了使您的 AJAX 应用程序可抓取,您的网站需要 遵守新的协议。本协议基于以下内容:

    1. 本站采用AJAX爬取方案。

    2. 对于每个动态生成内容的 URL,您的服务器都会提供一个 HTML 快照,它是用户的内容(带有 浏览器)看到。通常,这样的 URL 将是 AJAX URL,即 URL 包含哈希片段,例如 www.example.com/index.html#key=value,其中#key=value 是哈希值 分段。 HTML 快照是页面上显示的所有内容 在 JavaScript 执行之后。

    3. 搜索引擎索引 HTML 快照并在搜索结果中提供您的原始 AJAX URL。


    这种技术并不容易设置,但它是可能的。

    【讨论】:

    • 不建议这样做 - webmasters.googleblog.com/2015/10/… Quote: 如果您预渲染页面,请确保提供给 Googlebot 的内容与用户的体验相匹配,无论是外观还是交互方式.向 Googlebot 提供与普通用户看到的内容不同的内容被视为伪装,并且违反了我们的网站站长指南。
    【解决方案2】:

    是的,可以通过 HTTP_USER_AGENT 检测到 Google Bot,但您可能会将 Google Ban 和 PR 设置为 0。

    【讨论】:

    • 你有这个主题的链接吗?
    猜你喜欢
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-16
    • 2021-04-14
    • 2023-02-14
    • 2016-06-12
    相关资源
    最近更新 更多