浏览器能否从caching中显示图像(或其他对象),而不接收304状态码?

我试图了解是否可能避免一些embedded式对象的请求,直接从caching中加载它们,而不询问Web服务器,如果对象是有效的或不(我不会拒绝Web服务器响应我与304 HTTP状态代码)可能吗? 过期的标题是否适用于这种方式? 怎么样?


从我的htaccess。

# cache images/pdf docs for 10 days <FilesMatch "\.(ico|pdf|jpg|jpeg|png|gif|js)$"> Header set Expires "Mon, 31 Dec 2035 12:00:00 gmt" </FilesMatch> # cache html/htm/xml/txt diles for 2 days <FilesMatch "\.(html|htm|xml|txt|xsl)$"> Header set Cache-Control "max-age=7200" </FilesMatch> </IfModule> 

与php头函数类似的操作也在httpd.conf中。

我在apache access.log中validation结果。 每次刷新access.log文件中的页面都会出现304请求。 所以,我认为浏览器总是提出要求。

是的,您应该使用ExpiresCache-Control: max-age标头来防止浏览器再次请求对象。 有关详细信息,请参阅RFC 2616 。

当caching完全避免向原始服务器发出请求时,HTTPcaching效果最好。 避免请求的主要机制是原始服务器在将来提供明确的到期时间,指示响应可以用于满足后续请求。 换句话说,caching可以返回一个新的响应,而无需先联系服务器。