什么是最佳实践:ajax内容 - jsRender - 使其SEO友好

时间:2012-10-17 14:05:09

标签: javascript ajax caching jsrender

我正在创建一个在主页上显示不同列表的应用程序...

为了更好的性能我使用php预先缓存json并将其放入文件中并使用ajax调用我使用来自Boris Moore的jsRender的模板解析项目。工作非常快,非常完美。

但是如何向搜索引擎提供相同的内容? 问题不在于转义片段......问题是保持简单,没有开销......

理想情况下会有一个jsRender php端口将模板解析为html,这样我就可以将其缓存并随时将其提供给SE。

但我找不到任何东西,特别是'couse jsRender仍在开发中,而且正在发生变化。

那么有没有办法获取js生成的内容?

我知道我可以在浏览器中打开一个页面让jsRender完成这项工作,然后使用ajax保存$('#list')。html()内容....但我有数百个不同的页面需要缓存一天几次,所以选择不是真的可行......

1 个答案:

答案 0 :(得分:0)

一些事情:

  • 为SE服务 SE的特定内容是被SE禁止的好方法(如果 我们正在谈论谷歌),请参阅他们的条款
  • 如果你想谷歌索引动态渲染内容的内容而不是你可能会遇到挑战,但根据网络,谷歌确实在http://searchengineland.com/its-official-googles-proposal-for-crawling-ajax-urls-is-live-37298
  • 指出了更多的AJAX索引
  • 如果您希望Google根据动态内容显示的信息进行抓取,那么您需要一个sitemap.xml,它可以在与缓存json相同的运行中生成。 sitemap.xml是“提示”谷歌(而不是欺骗)的唯一有效方式

更新反映意见: 如果JsRender是您想要保留的核心值,那么您可能只是使用NodeJS来执行这些jsRender文件,然后将输出包含在PHP文件中或以任何方式为它们提供服务。我查了一下ppl如何使用NodeJS和jsRender:https://github.com/shtylman/node-jsrender

HTH