【问题标题】:Google Crawler for Single Page Application用于单页应用程序的 Google 爬虫
【发布时间】:2016-04-18 19:31:45
【问题描述】:

我有一个网站,左侧有一个菜单(大约 5/6 个条目),页面其余部分有一个中心区域 div。使用 ajax 调用填充中心区域。当用户点击一个新的菜单项时,该 div 的内容将被删除并替换为通过 ajax 获得的新内容。

现在问题是谷歌索引。我对此有一些疑问:

  1. 如果进入主页会自动触发第一个 ajax 调用(第一个菜单项),谷歌是否能够读取第一页的内容?

  2. 如果第一个问题的答案是肯定的,我可以使用哈希表示法(例如 mysite.com#page/1 )区分页面,并让用户有机会使用直接访问另一个菜单条目对应的哈希。之后可以构建一个包含每个哈希条目的链接的站点地图吗?在那种情况下,谷歌能够阅读我网站的所有内容吗?如果是的话,你能给我一个站点地图的例子吗?

  3. 最后,如果第一个问题的答案是否定的,那么像这样索引单页应用程序的最佳方法是什么?

基本上我的内容真的很少,但对我来说,单页应用可以向用户展示的用户体验非常重要。

最后一个问题:我还使用 jQuery mobile 的“页面”表示法构建了移动版本。可以做google indexing吗?

提前致谢,我们将不胜感激。

再见!

【问题讨论】:

    标签: ajax web-crawler sitemap google-crawlers google-index


    【解决方案1】:

    这个问题可能更适合webmasters.stackexchange.com,但我还是会在这里试一试。

    这是Google's previous recommendation,用于索引单页应用程序,使用无头浏览器获取启用 ajax 的 HTML 的“快照”,然后发送到机器人。但是,这在 2015 年 10 月被弃用,因为 Google Bot 现在能够读取和解释 JavaScript 和 CSS 文件,前提是它没有在 robots.txt 文件中被阻止。详情请见this blog post

    我认为这应该回答所有三个问题。只要您坚持使用常规的已定义单页应用程序结构,例如使用哈希 #、hashbang #!history.pushState(),那么您应该可以根据需要定义页面并使用您定义的创建关联站点地图链接结构。

    【讨论】:

    • 非常感谢您的回答。我会读你的链接。谢谢!
    • 最后一个问题:您能给我一个带有哈希页面的站点地图示例吗?谢谢
    猜你喜欢
    • 2018-01-24
    • 1970-01-01
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多