【问题标题】:Fetch as Google Webmaster tools作为 Google 网站管理员工具抓取
【发布时间】:2015-06-22 04:01:43
【问题描述】:

我有一个 AngularJS SPA 网站,我想在网站管理员工具中使用 google 的“Fetch as Google”功能对其进行测试。我对结果有点困惑。 Googlebot 的屏幕截图看起来是正确的,但是响应不包括“ui-view”(ui-router)中的任何内容......有人可以解释这里发生了什么吗?由于屏幕截图正确,谷歌是否正确索引该网站?还是 google 无法正确执行 JS 以进行索引?

【问题讨论】:

  • 这个问题应该有一千个赞。

标签: angularjs seo google-search-console


【解决方案1】:

这是一个混合包。从一些测试中,我看到 GoogleBot 在某些情况下能够索引一些 AJAX 获取的内容。一个安全的赌注是使用prerender.io 或下载他们的开源内容(使用 PhantomJS)让您的网站易于索引。基本上,这样做是在给定 URL 的异步操作完成后保存站点的版本,然后在服务器上设置重定向,将搜索引擎的任何潜在机器人指向预处理页面。这听起来很复杂,但按照网站上的说明进行设置并不难,如果您不想为 prerender.io 付费以将页面的缓存副本提供给搜索引擎,您也可以自己运行服务器组件。

【讨论】:

  • 有用的建议! (但并没有真正回答这个问题。)
  • @SenseiJames 如果我不得不猜测我会说 google bot 确实在页面上执行 JS,但取决于解析或重定向或任何 ui-router 可能配置为给定站点执行的操作可能不会让机器人“知道”在扫描/索引页面之前等待操作完成多长时间。使用答案中提到的预渲染服务或运行您自己的版本可以让您更严格地控​​制何时捕获快照(可以在窗口对象上设置一个变量以将其标记为等到您让它知道数据/页面已加载)
猜你喜欢
  • 2017-01-18
  • 2013-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多