我正在开发一个在线音乐杂志。我们有一个 html5/flash 音乐播放器,它构成了网站的主要部分。但该网站也有很多文章和东西。所以基本上,我希望跨页面加载无缝音乐播放,但我也希望避免使用完整的 javascript 应用程序,因为我希望所有内容在 Google 中都是蜘蛛友好和可索引的。
我使用带有 hashbang (#!) 后备的 html5 history api 来在点击时加载主页内的各种内容。加载的 URL 也指向包含内容的页面。
例如:我的索引页 munimkazia.com 中的 munimkazia.com/page1.html 链接将从 page1.html 加载内容并插入。URL 将在 firefox 和 IE 中更改为 munimkazia.com/#!/page1.html,在 chrome 中更改为 munimkazia.com/page1.html。由于 href 链接是 munimkazia.com/page1.html,因此蜘蛛会跟随链接并获取内容。我在 page1.html 中正确设置了页面,可以查看了。但是现在,我有问题。
如果我决定在此页面上使用 ajax 加载,浏览器位置栏上显示的 URL 将与 hashbang 回退不一致 (http://munimkazia.com/page1.html/#!/page2.html) 如果我决定将所有点击重定向到http://munimkazia.com的主容器页面并加载 page2.html,此后一切正常,但此页面加载将中断之前的音乐播放(如果有)。
另外,我不想将所有http://munimkazia.com/page1.html重写为http://munimkazia.com/#!/page1.html,因为我希望所有内容都存在而不是获取并且由 javascript 编写,供搜索引擎蜘蛛阅读。我知道谷歌有一个规范来阅读 #! URL,但我希望页面加载用户的文章内容,即使 JS 被禁用
有什么想法/建议/解决方法吗?
编辑:这些网址只是解释我的观点的例子。在 munimkazia.com 上没有 javascript 代码来获取页面