在HTTP标头中设置到期日期或最长期限

时间:2013-11-21 20:16:44

标签: php html http caching http-headers

我刚刚完成了一个我设计的网站并将其提交给谷歌洞察 http://developers.google.com/speed/pagespeed/insights/ 对于绩效评估,这是我得到的结果。 enter image description here

它说,我需要在HTTP标头中设置到期日期或最长期限,但我不知道如何设置Cookie /会话以外的任何有效期限,所以我不知道是什么这意味着或如何做到这一点。

非常感谢任何帮助

1 个答案:

答案 0 :(得分:47)

通常使用主机上的.htaccess文件来完成。以下是从HTTP cache headers with .htaccess

剪切并粘贴的示例
<IfModule mod_headers.c>
# WEEK
<FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=604800, public"
</FilesMatch>
</IfModule>

如果从PHP shell提供材料,您可以使用PHP创建标题,在这种情况下,您将参考此处概述的HTTP协议第14.9节“缓存控制http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

<?php
/* This file is a wrapper, */

header( 'Cache-Control: max-age=604800' );
/* now get and send images */
?>

我认为.htaccess这两种方法更容易。