【发布时间】:2010-10-01 14:42:59
【问题描述】:
如何让 Apache 上的静态内容{被浏览器缓存}而不是{检查新鲜度 {with each request}}?
我正在开发一个托管在 Apache 网络服务器上的网站。最近,我正在测试一些带有标题的东西(Content-Type 用于不同类型的内容),并看到了很多对图像的条件请求。示例:
200 /index.php?page=1234&action=list
304 /favicon.ico
304 /img/logo.png
304 /img/arrow.png
(etc.)
虽然图像文件是静态内容并由浏览器缓存,但每次用户打开链接到它们的页面时,都会有条件地请求它们,并发送“304 Not Modified”。这很好(传输的数据更少),但这意味着每次页面加载都会产生 20 多个请求(由于所有这些往返行程导致页面加载时间更长,即使启用了 Keep-Alive 和流水线也是如此)。
如何告诉浏览器保留现有文件而不检查更新版本?
编辑: mod_expires 方法有效,即使使用 favicon。
【问题讨论】:
标签: apache mod-expires image-caching