为整个域缓存JavaScript库
我启用了URL重写功能,我有很多独特的URL,如下所示,有点像YouTube:为整个域缓存JavaScript库,javascript,html,caching,browser,Javascript,Html,Caching,Browser,我启用了URL重写功能,我有很多独特的URL,如下所示,有点像YouTube: https://example.com/f/HyhsuLk/ksi 加载的页面使用相当大的JavaScript库,第一次点击上面的页面时,需要几秒钟才能显示页面。我假设所有后续访问同一页面的速度都非常快,因为包括大型JavaScript库在内的所有资产都已缓存 如果我选择了一个新的URL,例如: https://example.com/f/HyhsIueh/poi 它基本上加载完全相同的页面、相同的大型JavaS
https://example.com/f/HyhsuLk/ksi
加载的页面使用相当大的JavaScript库,第一次点击上面的页面时,需要几秒钟才能显示页面。我假设所有后续访问同一页面的速度都非常快,因为包括大型JavaScript库在内的所有资产都已缓存
如果我选择了一个新的URL,例如:
https://example.com/f/HyhsIueh/poi
它基本上加载完全相同的页面、相同的大型JavaScript资产等。。重新加载需要几秒钟,就像重新下载JavaScript文件一样,但随后对该页面的所有访问都很快
所以我有两个问题:
如果URL发生变化,为什么要重新下载相同的资产
如何缓存JavaScript库,以便在所有页面上使用它,而不是为新URL重新下载
JavaScript文件是通过我的网站上文件的相对路径包含的
它在两个页面上解析完全相同的路径,实际上所有页面都使用相同的头模板文件
我发送的过期日期为未来1年,最长期限为360。您可以在通过Apache交付文件时添加一个标题,让浏览器知道何时缓存或重新加载。感谢回复@JnnMgdls,尽管我认为您误解了我的问题。我了解缓存是如何通过标题等方式工作的,我的问题是如何使用加载同一页面的不同URL进行缓存。js库是如何包含的?它在这两个页面上解析为什么路径?为它发送了什么缓存头?@Bergi请查看我的更新答案…嗯…重新加载需要几秒钟,就像重新下载JavaScript文件一样-不可能是单个js文件。这两页上的其他资源呢?