【问题标题】:Understanding the Google specification for crawlable ajax了解可抓取 ajax 的 Google 规范
【发布时间】:2011-11-04 17:11:49
【问题描述】:

我使用 dotnet c# 和 jQuery plus webservices 进行 ajax 调用。我的分页像 twitter 和 facebook 分页一样工作。在 onload 事件中,ajax 调用用 10 行填充内容区域,单击或翻页事件调用相同的 ajax 调用,带有页面参数,带来更多 10 行,依此类推。对于非 javascript 用户,我没有规范的分页。我阅读了有关可抓取 ajax 的 Google 规范,但我不确定如何将我的模型转换为 google 新模型。

首先,我使用jQuery ajax post,使用json格式。因此,可以创建一个读取像http://www.domain.com/search.aspx?_escaped_fragment_=somevalue 这样的 URL 并使用 _escaped_fragment_ 值返回内容的 aspx 页面。但是,不知何故,我必须将此页面链接传播到谷歌爬虫http://www.domain.com/search.aspx#!somevalue。这样可以吗?

好的!但是当谷歌爬虫访问我的分页时,爬虫不会看到任何指向http://www.domain.com/search.aspx#!1 的链接,除非我在站点地图中指向它,这对我来说毫无意义。我一团糟。有人可以给我小费吗?

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    我对图的理解在这里:http://code.google.com/web/ajaxcrawling/docs/getting-started.html

    Google 是否会将您的现有“漂亮”网址(例如http://www.domain.com/search.aspx?page=2)更改为丑陋的版本(包括#!)。它通过正常机制执行此操作 - 在您的页面上某处找到该链接(例如,指向“第 2 页”的 href)。

    然后它提交它,您的网站必须理解这一点,并呈现快照。

    所以不需要站点地图,除非您没有第 2 页链接(链接到第 3 页等)

    【讨论】:

      【解决方案2】:

      让我们试试:

      考虑一个指向页面的链接,例如www.domain.com/search.aspx?query=google#1

      页面search.aspx必须有一个读取hash的函数,获取页面1相关的内容。这个内容的一部分是www.domain.com/search.aspx?query=google#2。该函数执行相同的操作,但现在它获取的是相对于第 2 页的内容。以此类推。

      现在我必须将#1 和#2 换成#!1 和#!2。我的逻辑是一样的,但是谷歌爬虫会调用www.domain.com/search.aspx?query=google&_escaped_fragment_=1,我必须创建一个 url 路由,将这个 url 重定向到某个页面,该页面将为结果返回一个 html 快照。

      是吗?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-07-11
        • 2014-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-06
        相关资源
        最近更新 更多