最近,谷歌宣布将推出对_escape_fragment的支持。这是谷歌用来获取网站“静态”内容的一个功能,如果它有hashbang (#!)在URL中。
因此,现在Google建议在网站的JS版本的同时,为没有JS的用户提供一个静态的、非JS的版本,并以同样的方式提供给Google机器人。
因此,当人们访问网站时,例如test.com/#!/item/2
我应该生成一个JS版本的网站,并在noscript标签的非JS版本。好的。
但是既然hashbang没有发送到服务器,我怎么知道我需要为项目2生成一个静态网站呢?
因此,我的问题是:如何在hashbang url计划网站上为非JS用户提供静态内容。
发布于 2015-10-30 17:25:24
你不能,但这不是谷歌的意思。
与其使用哈什班斯,不如使用pushState和历史API的其余部分。
这将使您拥有像http://test.com/item/2这样的URL。
如果有人访问http://test.com/item/2,那么如果他们访问了http://test.com/item/1,然后触发将其转换为http://test.com/item/2的JavaScript事件,您的服务器就应该以它所处的状态生成页面。
根本不需要使用noscript。
https://stackoverflow.com/questions/33441552
复制相似问题