以下重要限制适用:
- 元标记可能只出现在没有散列片段的页面中。
- 只有“!”可能会出现在内容字段中。
- 元标记必须出现在文档的头部。
醇>
来源:https://developers.google.com/webmasters/ajax-crawling/docs/specification?hl=fr-FR
我知道只有不包含hashbang但仍应提供快照的网页才需要它。但这通常只是主页。
假设我们有:
www.foo.com
www.foo.com /#!/岗位的
第二个将被提取为:
www.foo.com?_escaped_fragment _ = /作业
仅仅是因为hashbang。
但是根页面没有hashbang所以它需要在头部有这个特殊的元标记。
<meta name="fragment" content="!">
但是,由于我的所有单页应用程序到目前为止都使用相同的<head>
,我想知道将执行包含hashbang的所有其他页面中的元标记保持为实际是有害的。
实际会发生什么?
答案 0 :(得分:7)
是不是只是一个选择加入,这意味着在包含hashbangs的页面上使用它是多余的(无害)?据我所知,如果它在URI中检测到hashbang,则爬虫会自动查找_escaped_fragment_页面。只有在URI中没有hashbang时,您才可以建议爬网程序使用元标记附加_escaped_fragment_参数。这样,如果设置了参数,您可以提供不同的内容。这就是一些blogspot主题的工作方式(例如http://illegalcartoon.blogspot.de/)。
我的问题是否正确?
Google已弃用使用_escaped_fragment_
的AJAX抓取方案。以下是关于博客帖子的引用:
今天,只要您不阻止Googlebot抓取您的JavaScript或CSS文件,我们通常就能够像现代浏览器一样呈现和理解您的网页。
阅读完整文章:https://webmasters.googleblog.com/2015/10/deprecating-our-ajax-crawling-scheme.html
答案 1 :(得分:3)
根据google的说明,如果页面有<meta name="fragment" content="!">
为了获取没有索引的哈希片段的页面,您需要包含一个 页面HTML标题中的特殊元标记。重要:制作 确保您仅将此解决方案用于包含Ajax内容的页面。 将此添加到非Ajax页面不会产生任何好处并增加额外负载 在您的服务器和Google上。
此标记向抓取工具表明它应该抓取丑陋的内容 此URL的版本。根据上述协议,爬虫将会 暂时将漂亮的URL映射到相应的丑陋URL。其他 单词,如果你放入页面 www.example.com,抓取工具会暂时将此网址映射到 www.example.com?_escaped_fragment_=并会向您提出此要求 服务器。然后,您的服务器应返回相应的HTML快照 到www.example.com。
因此,当服务器收到像www.example.com?_escaped_fragment_=
这样的请求时,您可以在没有name="fragment" content="!"