在Google关于“使AJAX应用程序可抓取”的建议中,他们建议通过在页面<meta name="fragment" content="!">上添加<head>来使不使用哈希爆炸片段(#!)的AJAX URL可抓取。

有人成功吗?有了这个?在网站站长工具中使用“作为Googlebot抓取”时,我找不到Googlebot为页面拍摄HTML快照。

评论

我认为这样做可能会更好。

有趣。也许谷歌不采取片段的快照。片段网址是否被索引?

#1 楼

请在Google论坛中使用AJAX抓取功能(而不是元标记)检查此主题。 google提取工具存在问题。

#2 楼

在允许抓取AJAX内容的前几节中,Google声明:


3.处理没有哈希片段的页面

您的某些页面可能没有哈希碎片。例如,您可能希望主页为www.example.com而不是www.example.com#!home。因此,对于没有哈希片段的页面,我们有特殊的规定。


注意:确保仅对包含动态的,由Ajax创建的内容的页面使用此选项。对于仅具有静态内容的页面,它不会向爬网程序提供额外的信息,但是会给您和Google的服务器带来额外的负担。


为了使页面没有哈希片段可抓取的,您将在页面的HTML头中包含一个特殊的meta标签。

meta标签采用以下形式:

<meta name="fragment" content="!">


这向爬网程序指示它应爬网该URL的丑陋版本。根据上述协议,搜寻器会将临时网址临时映射到相应的丑陋网址。换句话说,如果您将其放置在www.example.com页面中,则爬网程序会将此URL临时映射到www.example.com?_escaped_fragment_=,并将向您的服务器请求。然后,您的服务器应返回与www.example.com对应的HTML快照。请注意,此元标记有一个重要限制:唯一有效的内容是“!”。换句话说,
元标记将始终采用精确的形式:<meta name="fragment" content="!">,它指示空的哈希片段,但页面具有AJAX内容。


因此,您仍然需要使用无头浏览器将URL映射到包含?_escaped_fragment_=的“丑陋”版本。

它们会继续显示警告:


如果www.example.com?_escaped_fragment_=的内容返回404代码,则不会为www.example.com的内容建立索引!


所以您也应该对此进行测试。