如何为包含#的网址添加_escaped_fragment_!在斜线之后?

时间:2015-07-22 10:55:00

标签: backbone.js seo

在我的节点+ backbone.js应用程序中,页面网址之一看起来就像“http://example.com/#!book1”。 Google将如何处理此网址以进行抓取?

他们是否将网址替换为

'example.com/_escaped_fragment_=book1'

'example.com /?_ escaped_fragment_ = book1'?

有人可以指导我吗?

1 个答案:

答案 0 :(得分:1)

如果您不必支持浏览器,为什么不简单地摆脱#

它就像

一样简单

Backbone.history.start({pushState: true})

查看https://documentcloud.github.io/backbone/#History

  

pushState支持在Backbone的纯粹选择基础上存在。不支持pushState的较旧浏览器将继续使用基于散列的URL片段,如果支持pushState的浏览器访问散列URL,则它将透明地升级到真实URL。请注意,使用真实URL要求您的Web服务器能够正确呈现这些页面,因此也需要进行后端更改。例如,如果您的路径为/ documents / 100,则如果浏览器直接访问该网址,则您的网络服务器必须能够提供该网页。对于完整的搜索引擎可抓取性,最好让服务器为页面生成完整的HTML ...但如果它是一个Web应用程序,只需呈现与根URL相同的内容,使用Backbone Views和JavaScript填写其余内容工作正常。