替代mod_expires来设置过期标头?

时间:2009-12-27 17:47:10

标签: php apache .htaccess caching

我在Apache服务器上使用php。我无法在我正在处理的服务器上的.htaccess中设置过期标头,因为它是共享服务器,并且他们(Web主机)不会在apache构建中安装mod_expires模块。 我一直使用ExpiresActive On并为js文件中的图像,xml.htaccess和文本文件设置默认缓存过期时间。

我的其他选择是什么?

感谢。

2 个答案:

答案 0 :(得分:4)

你可以使用.htaccess而不使用mod_expires。

<IfModule mod_headers.c>
  <FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
    Header set Expires "Wed, 15 Apr 2020 20:00:00 GMT"
    Header set Cache-Control "public"
  </FilesMatch>
</IfModule>

答案 1 :(得分:1)

有人可能会想出一个没有模块的Apache特定解决方案,但作为最后的手段,如果没有其他方法,您可以通过PHP路由所有流量并在那里输出标头。但这意味着通过PHP解释器发送每个资源,并且非常昂贵。