【发布时间】:2018-05-04 18:39:16
【问题描述】:
我什至不知道如何表达这个问题的标题,但希望下面的描述能解释我的问题。
我有一个 Web 应用程序,它由一个带有搜索字段的裸搜索页面组成。搜索实际上是由客户端浏览器执行的,结果是通过 ajax 加载的。换句话说,服务器只提供http://server/index.html 的裸搜索页面
执行查询后,我使用history.pushState() 将浏览器地址栏中的URI 更改为更合理的名称,例如http://server/index.html?q=searchterm&page=1&size=10。分页由prev 和next 链接执行,这些链接也通过ajax 以及适当增加或减少的page 和size 值进行调用。一切都很好。
但是,我希望我的应用程序成为一个优秀的网络公民,并且可以添加书签。也就是说,如果有人直接在浏览器地址栏中输入http://server/index.html?q=searchterm&page=1&size=10,我想正确加载结果。除非我将该 URI 发送到服务器,除非我实现一些服务器端处理,否则服务器会发出嘶哑的声音。而且,这是我不想做的事情,因为这将完全改变我的应用程序的复杂性。 除非我可以用普通的香草nginx(我的网络服务器)来做到这一点。换句话说,我不想实现任何服务器端脚本,除了可以使用 Web 服务器本身完成的操作,例如 SSI。
那么,我该如何解决这个问题呢?
【问题讨论】:
标签: javascript ajax nginx server-side-includes