Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
Apache 图像不缓存?_Apache_.htaccess_Performance_Yslow_Pagespeed - Fatal编程技术网

Apache 图像不缓存?

Apache 图像不缓存?,apache,.htaccess,performance,yslow,pagespeed,Apache,.htaccess,Performance,Yslow,Pagespeed,我确信我网站上的某些图像没有正确缓存。我已经尽我所能设置了标题,但似乎每次我点击刷新按钮时它们都会再次下载 例如,下载一个特定的图像总是需要1秒多一点的时间。这甚至是在应该缓存它之后。以下是响应标题: HTTP/1.1 200 OK Date: Sun, 06 Mar 2011 12:51:52 GMT Server: Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.7a mod_auth_passthrough/2.1 mod_bwlimited

我确信我网站上的某些图像没有正确缓存。我已经尽我所能设置了标题,但似乎每次我点击刷新按钮时它们都会再次下载

例如,下载一个特定的图像总是需要1秒多一点的时间。这甚至是在应该缓存它之后。以下是响应标题:

HTTP/1.1 200 OK
Date: Sun, 06 Mar 2011 12:51:52 GMT
Server: Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.7a mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/5.2.16
Last-Modified: Thu, 01 Jan 1970 00:00:00 GMT
Accept-Ranges: bytes
Content-Length: 19211
Cache-Control: max-age=630323456, public
Expires: Wed, 03 Mar 2021 12:51:52 GMT
Keep-Alive: timeout=5, max=98
Connection: Keep-Alive
Content-Type: image/png
这有什么问题吗?谢谢

更新

<FilesMatch "\.(htm|html|php)$">
    Header set Expires "Thu, 01 Jan 1970 00:00:00 GMT"  
</FilesMatch>

标题集过期“1970年1月1日星期四00:00:00 GMT”

上一次修改的日期是1970年,您的最大年龄是630323456秒(19岁)。因此,该文件自1989年以来已“过期”,必须重新下载。浏览器正在做它应该做的事情

解决方案:

  • 将上次修改更改为实际上次修改(可能在过去几年的某个时间)

  • 将最大年龄更改为

  • 移除Expires标头;当您还有“最大年龄”时,它将被覆盖。或者,删除缓存控制头并仅保留Expires头。任何一个都可以,但只能使用一个,不能同时使用两个


  • 你的缓存大小是多少?。在firefox地址栏中键入“about:cache”,查看您的文件是否在cache@Pekka:是的。根据谷歌:“将上次修改的日期设置为上次更改资源的日期。如果上次修改的日期在过去足够长,那么浏览器很可能不会重新蚀刻它。”@Stack,当然,我没有这么想。嗯,你对Firebug有什么反应?你能确认它一直在重新加载吗?是否有机会成为一个活生生的例子?@zimbaao提到的本地缓存可能确实是一个问题issue@Zimbabao-我的缓存已关闭(通过web开发者工具栏)!但是,当我重新启用它时,问题仍然存在。磁盘缓存:
    最大存储大小:51200 KiB
    (正在使用的存储:284 KiB)@Stack您是否可以通过查看Firebug中的“net”选项卡确认图像一直在重新获取?你每次都得到一个
    200 OK