【问题标题】:Google update and AngularJS/JavaScript websites谷歌更新和 AngularJS/JavaScript 网站
【发布时间】:2014-07-17 14:39:28
【问题描述】:

Google 今天(2014 年 5 月 28 日)宣布,JavaScript 内容将由 google bot 呈现。哇好消息!因此,无需为抓取目的提供一些预渲染页面。在http://googlewebmastercentral.blogspot.de/2014/05/understanding-web-pages-better.html 上阅读更多相关信息

但我高兴得太早了。我关闭了预渲染服务,让谷歌使用网站管理员工具抓取我的网站。在查看呈现的 HTML 代码后,我发现:

<div ng-view></div>

很明显,Google 没有正确呈现 ng-view(希望目前如此)。所以我打开我的预渲染服务并再次抓取该网站。这是第二个问题:Google 不会将 URL 中的 hashbang (#!) 自动翻译成 ?_escaped_fragment_=,这表明 google 网站上有 AJAX 内容。更多关于 AngularJS 和 SEO 的信息可以在这里找到:http://www.yearofmoo.com/2012/11/angularjs-and-seo.html

到目前为止,据我所知,所有预渲染服务都会检查 URL 中的 ?_escaped_fragment_= 字符串。如果字符串存在,则预渲染服务将提供站点的 html 快照。但谷歌不再这样做了。总而言之:目前谷歌无法抓取包含 JS/AJAX 内容的网站。

有没有人有类似的经历?有没有办法解决这个问题?

【问题讨论】:

    标签: javascript ajax angularjs seo


    【解决方案1】:

    支持您的发现,我没有看到 Google 正确预渲染 ajax 内容 - 至少在 webmastertools 渲染器中没有。 Google 之前一直在正确呈现 ajax 内容,遵循他们自己的“使 Ajax 可抓取”指南(更多信息:https://developers.google.com/webmasters/ajax-crawling/docs/getting-started)以及在 webmastertools 服务中的搜索索引,从“?_escaped_fragment_=”获取内容。

    由于这似乎是 Google 网站上的问题,因此我们不会在这里找到答案,而是通知 Google。

    【讨论】:

      猜你喜欢
      • 2021-05-22
      • 1970-01-01
      • 2016-02-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-01
      • 1970-01-01
      相关资源
      最近更新 更多