Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.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
Image mod_pagespeed-如何设置过期和缓存更新时间?_Image_Apache_Caching_Pagespeed_Mod Pagespeed - Fatal编程技术网

Image mod_pagespeed-如何设置过期和缓存更新时间?

Image mod_pagespeed-如何设置过期和缓存更新时间?,image,apache,caching,pagespeed,mod-pagespeed,Image,Apache,Caching,Pagespeed,Mod Pagespeed,我对两件事感兴趣: T.1)mod_pagespeed已为每个文件(html、xml…、文档除外)安装了Expires头值。因此,这次如何更改每个文件和文件夹?这个模块能做到吗 我希望第一项任务不需要举例 T.2)mod_pagespeed在更改每个缓存文件3-4分钟后更新该文件。 所以,若我更改了文件的内容,那个么它会在3-4分钟后刷新后更新。 如何通过此模块控制此时间 第二个问题的例子: 我保存了名为test.jpg的JPEG图像,在浏览器中刷新如下: localhost/images/te

我对两件事感兴趣:

T.1)mod_pagespeed已为每个文件(html、xml…、文档除外)安装了Expires头值。因此,这次如何更改每个文件和文件夹?这个模块能做到吗

我希望第一项任务不需要举例

T.2)mod_pagespeed在更改每个缓存文件3-4分钟后更新该文件。 所以,若我更改了文件的内容,那个么它会在3-4分钟后刷新后更新。 如何通过此模块控制此时间

第二个问题的例子:

我保存了名为test.jpg的JPEG图像,在浏览器中刷新如下:

localhost/images/test.jpg

然后我用图像编辑器更改这个文件并重新保存它。 现在,此文件已保存在浏览器的缓存中,并将在3-4分钟后在浏览器中呈现。 所以我想控制每个文件和文件夹的时间


伙计们,我真的需要你们的帮助!为了解决这个问题,花了整整一周的时间。

一点背景:mod_pagespeed延长了资源的缓存生存期,并在资源名称中添加了一个唯一的哈希代码,以提高用户的缓存能力,从而加快返回用户的页面加载速度

正如您所指出的,有两种不同的缓存生存期对mod_pagespeed很重要

(T.1)是缓存生存期mod_pagespeed集合。它目前设置为1年,我不认为它是可定制的。但是,由于我们在URL中添加了唯一的哈希代码,所以在大多数情况下,您不需要自定义它。一旦mod_pagespeed意识到资源已更改,它会将不同的URL放入HTML文件中,从而更新用户缓存

(T.2)是资源的原始缓存生存期(默认为5分钟)。mod_pagespeed会在文件过期时重新加载该文件,因此您会看到3-4分钟的延迟。有几种不同的方法可以改进这一点。最好是如果文件是完全静态的,您可以使用。当您使用该指令时,mod_pagespeed将在每次重写HTML时检查文件,这意味着资源将立即更新。 如果不能使用LoadFromFile,可以在Apache中显式地为资源设置更短的缓存生存期。例如:

<Directory ".../foo/">
  ExpiresByType image/gif "modification plus 3 minutes"
  ExpiresByType text/css  "modification plus 1 minute"
</Directory>
<Directory ".../bar/">
  ExpiresByType text/css "modification plus 5 minutes"
</Directory>

ExpiresByType image/gif“修改加3分钟”
ExpiresByType文本/css“修改加1分钟”
ExpiresByType文本/css“修改加5分钟”

但是,请注意,如果减少这一时间,您将使mod_pagespeed请求资源的频率更高(对于上面foo/目录中的CSS文件,每1分钟一次),并且可能会不必要地增加服务器的负载。另一个解决方案是在开发过程中使用。这可以让您在开发时快速更新服务器,但不会让您的服务器在剩下的时间里承受不必要的负担。

我在谷歌上使用了Pagespeed insights工具,在那里我看到资源只缓存了10分钟。谷歌说这不是一个令人满意的时间。。。那不是一年。这就是我的困惑。