0

我正在使用 html5、knockout.js、history.js 和 pager.js 创建一个 SPA(单页应用程序)。

除了“真实”页面刷新之外,一切都运行良好。由于内容是从 pager.js(通过 div 导航的 knockout.js 插件)动态写入的,并且 history.js 正在更改 uri,因此当刷新网页时,它会因 404 错误而中断。然而,在 pager.js 网站上,我可以刷新任何动态链接并且它可以正常工作。我已经浏览了文档,但我不确定如何解决这个问题。最后我看到了一些关于 crawler.js 为搜索引擎拍摄 html 的快照的东西,尽管我不确定,但这可能是我的答案。

有谁知道如何解决这个问题?crawler.js 是我的答案吗?

4

1 回答 1

2

您需要配置您的网络服务器来为您的 html 页面提供一系列模式/URL,而不仅仅是其正常的 URL。这是您在使用 history.js(或任何其他 html5 历史解决方案)时需要做的事情。

假设您的页面是

example.com/my_page/  // points to some_folder/index.html

你正在导航到

example.com/my_page/side_1

index.html那么即使访问了 URL ,您也需要让您的网络服务器为您的文件提供服务example.com/my_page/side_1。否则,您的服务器将响应 404,因为它将尝试提供some_folder/side_1不存在的文件。

于 2014-05-29T17:55:07.907 回答