EmberJS Tech-Stacksearch引擎可抓取应用程序

我阅读了很多关于客户端JavaScript应用程序和search引擎漫游爬行方法的内容。 我发现了两个一般的方法:

工作stream程1:

先决条件:整个Web应用程序降级优雅,没有JavaScript可用。 所以它是可见的search引擎漫游器爬行。

  1. 用户来自谷歌search到一个特定的主题
  2. 该主题尽可能快地在纯html中加载
  3. JS App Framework在后台加载
  4. 一旦准备就绪JS应用程序框架接pipe所有的行动和路线等。

工作stream程2:

先决条件:服务器后端是根据Google的ajax抓取指南( https://developers.google.com/webmasters/ajax-crawling )devise的,并返回到escaped_fragmenturl(例如www.example.com/ajax.html?_escaped_fragment_=key =值)纯html。 据我了解像http://phantomjs.org/可以用来确保没有前端代码的重复。

  1. Google会在结果中显示ajaxurl
  2. 请求使用ajax url#!
  3. emberjs应用程序被初始化,并根据URL加载所需的状态。

题:

一个可抓取的应用程序堆栈应该如何为search引擎机器人和前端js-framework提供服务器端渲染? 什么是由emberjs核心开发人员build议实现这一目标? (例如,Node + Emberjs + phantomjs + – x或Rails + Emberjs + y或Playframework + Z)?

我知道可能有很多方法到达那里,但是我觉得使用stackoverflow来过滤常用的方法会很好。

边注:

我已经看了一些JS框架,想要创build这样一个完整的开箱即用。 在这里命名这些:

  • http://derbyjs.com/ (很好的方法,但仍然阿尔法)
  • http://batmanjs.org/ (不清楚生产准备(特别是后端))
  • http://www.firebase.com/ (不同的,但也有趣的,如果他们得到安全的权利)
  • http://meteor.com/ (也是预览状态)
  • http://developer.yahoo.com/cocktails/mojito/

我特别要求emberjs,因为我喜欢他们的方法,我认为它背后的团队绝对有能力构build最好的框架之一。

我还没有看到像这样为emberjsbuild立的任何东西。 然而,尽pipe早期尝试将用作节点的服务器端模块的ember集成在一起。

检查出来的东西是derby.js ,实际上工作stream程#1。 你可能想看看他们的代码库,如果你要完成这个任务,那就改编一下它的内容。