我对搜索机器人如何抓取我的ajax网站感到有些困惑。
http://www.example.com包含3个链接
我的页面标题中包含<meta name="fragment" content="!">
,因此机器人应使用以下网址访问这些链接,我使用prerender.io来提供页面
机器人抓取这些网页时的行为如何?当他们在这些页面上找到新的链接时,网址会是什么样的?
答案 0 :(得分:3)
以下是Google完整的AJAX抓取规范:https://developers.google.com/webmasters/ajax-crawling/docs/specification
机器人会看到#!
并将其转换为_escaped_fragment_
网址,就像您提到的那样。 <meta name="fragment" content="!">
标记仅适用于没有#!
的网页,例如您的主页或任何HTML5推送状态网址。如果网址包含#!
,则Google会自动询问_escaped_fragment_
,而不会检查<meta name="fragment" content="!">
如果Google抓取http://example.com?_escaped_fragment_=/abc
并在该页面上找到/#!/xyz
的链接,则会针对http://example.com?_escaped_fragment_=/xyz
单独发出请求。
因此,您应始终将您的网址链接到#!
网址,绝不会链接到_escaped_fragment_
网址。谷歌将自行改造它们。