在page1.html上说我需要mootools.js和main.js ...我想这些工具应该生成一个缩小的js文件(比如min1.js)。 然后在page2.html上我需要mootools.js,main.js和page2.js ......这些工具是否提供min1.js(已经被浏览器缓存)和page2.js?或者他们是否将这些3 .js文件组合在一起并提供最终需要由浏览器完全缓存的缩小文件?
谢谢
答案 0 :(得分:1)
假设您正在使用Apache模块mod_pagespeed,因为您使用它标记了问题,但没有提及您是否...
如果您打开ModPagespeedEnableFilters combine_javascript
(默认情况下已禁用),它将在整个页面上运行。根据{{3}}:
此过滤器生成的URL基本上是串联的 正在组合的所有CSS文件的URL。
page1.html将mootools.js,main.js和page1.js组合在一起;和page2.html将是mootools.js,main.js和page2.js。
要回答您的问题,是的,它会缓存重复JavaScript文件的多个副本。
然而,
默认情况下,过滤器会将脚本文件组合在一起 不同的路径,将组合元素放在最低级别 这两个来源都很常见。在某些情况下,这可能是不合需要的。您 可以使用
关闭行为ModPagespeedCombineAcrossPaths off
如果您启用此行为,并将文件分散到您想要组合的路径中,则可以将它们分开,以便将常用脚本组合为一个脚本,并将各个脚本单独组合在一起。这样可以减少大型公共库的重复。