Hashbang网址使Google难以抓取该网站?

时间:2012-07-24 00:10:22

标签: ajax seo hashbang

我们的代理机构建立了一个动态网站,它使用了大量的AJAX交互和#! (hashbang)网址:http://www.gunlawsbystate.com/

这是一本很长的书,你可以滚动浏览,地址栏中的URL会动态变化。我们必须支持IE所以请不要建议使用pushState - hansbang是我们现在唯一的选择。

左侧边栏中有一个导航,其中包含指向书中所有章节的链接。

链接示例: http://www.gunlawsbystate.com/#!/federal-properety/national-parks-and-wildlife-refuges/

我们期待谷歌抓住这个: http:// www.gunlawsbystate.com/?_escaped_fragment_=/federal-properety/national-parks-and-wildlife-refuges/ 这是该部分的完整html快照。 (+有章节的链接,如www.gunlawsbystate.com/#!/federal-properety/national-parks-and-wildlife-refuges/ii-change-in-the-law/ => www.gunlawsbystate.com /?_ escaped_fragment _ = / federal-properety / national-parks-and-wildlife-refuges / ii-change-in-the-law /)。

根据Google的规范(developers.google.com/webmasters/ajax-crawling/docs/specification),这一切看起来都很完整。 该网站目前运行约3个月。主页每10-15天重新编入索引。

问题是由于某种原因,Google不会正确抓取hashbang网址。 Google似乎“不喜欢”这些网址。

www.google.ru/search?&q=site%3Agunlawsbystate.com: 只有67页被编入索引。请注意,Google索引的大多数网页都有“普通”网址(主要是wordpress博客帖子,类别和标签),只有5-10%的结果页面是hashbang网址,尽管有超过400个具有独特内容的图书部分,Google应该这样做真的很喜欢,如果它正确爬行它。

有人可以就此提出建议,为什么Google不会正确抓取我们的图书页面?任何帮助将不胜感激。

P.S。对于不可点击的链接,我很抱歉 - stackoverflow不允许我发布超过2个。

UPD。该网站地图不久前已提交给Google。 Google网站站长工具说,提交了518个网址,只有62个网址被编入索引。此外,在网站站长工具的“索引状态”页面上,我看到有1196页已抓取; 1071页未选择。它清楚地指出,由于某种原因,谷歌没有索引#!它经常访问的网页。

2 个答案:

答案 0 :(得分:0)

你遗漏了一些东西。 首先,您需要一个元标记来告诉谷歌可以通过不同的URL访问哈希URL。

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

接下来,您需要将每个网址的映射版本提供给googlebot。

google访问时:

http://www.gunlawsbystate.com/#!/federal-regulation/airports-and-aircraft/ii-boarding-aircraft/

它会抓取:

http://www.gunlawsbystate.com/?_escaped_fragment_=federal-regulation/airports-and-aircraft/i-introduction/

为此,您需要使用PHP或ASP之类的东西来提供正确的页面。如果你能正确使用管道,Asp.net路由也可以工作。有些服务实际上会为您创建这些“快照”版本,然后您的元标记将指向其服务器。

答案 1 :(得分:0)

由于Google已弃用,现在Google无法访问hashbang网址下的内容。

根据研究,Google现在避免使用Escaped片段网址,并建议创建单独的网页而不是使用HashBang。

所以我认为PushState是另一种可以在这种情况下使用的选项。