Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为整个域缓存JavaScript库_Javascript_Html_Caching_Browser - Fatal编程技术网

为整个域缓存JavaScript库

为整个域缓存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

我启用了URL重写功能,我有很多独特的URL,如下所示,有点像YouTube:

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文件。这两页上的其他资源呢?