单页应用程序的搜索引擎索引

Search engine indexing of single page applications

好吧,我已经编写 Backbone.js 应用程序一年多了,我喜欢框架模型。我已经学会了如何避免所有的陷阱等等,但是作为单页应用程序开发人员,我在一个方面仍然很薄弱:如何对面向 public 的应用程序进行 SEO。

我正在做一个博客项目,在我看来最简单的解决方案是让服务器生成的所有博客条目的列表显示为 /blog 部分中的 link,即在页面加载时呈现,并确保在点击 /blog/:id url 时,服务器将博客内容加载到页面上的第一个 div,这将被设置为 display:none.

我的问题是这是否足以建立良好的搜索引擎索引? SEO 仍然是我作为开发人员最薄弱的技能。是否有确保搜索引擎首先抓取此内容并能够使用该内容进行更复杂索引的技术?

另外,据我所知 Google 一直在测试抓取 JavaScript 应用程序,是否有办法将页面上生成的应用程序内容列入黑名单?在我看来,如果没有某种标准的浏览器级事件可以在整个页面呈现时或在加载所有数据后触发,就永远不可能在它需要的级别上完成。

无论如何,我知道这是一张模棱两可的票,但如果我们在这里得到一些好的答案,它最终可能对未来的人们有用。

大多数主要搜索引擎(包括 Google)都在呈现他们从网站接收的内容,在我们(Google)的情况下,使用的是接近无头浏览器的东西,所以无论你为用户做了什么,搜索引擎也会得到它。然而,向搜索引擎提供不同的东西会让你进入一个危险的区域,称为伪装。

display:none 隐藏内容可能会适得其反。我们正在降低隐藏内容在排名中的权重。