https缓存主php脚本使用的资源,而不是脚本本身

时间:2009-11-01 01:01:12

标签: php caching https header http-headers

我在这里有点困惑。我读了一些关于https缓存的早期问题,但我没有得到明确的答案。

我有一个脚本:https://www.example.com/main.php

它生成一个html页面,引用位于(相对)的images / css / js资源: / css / javascript / images / a / b / img2

如何为这些资源启用缓存?我有权修改main.php脚本的头输出。


编辑:解决方案如下:

#Set a far expiration date for components
<ifmodule mod_expires.c>
ExpiresActive On
  <filesmatch "\.(jpg|jpeg|gif|png|css|js)$">
       ExpiresDefault "access plus 6 months"
   </filesmatch>
</ifmodule>

#add ETag for components
FileETag MTime Size

1 个答案:

答案 0 :(得分:1)

如果您正在运行Apache Web服务器,则可能需要.htaccess文件来输入有关组件的缓存信息。

在.htaccess文件中:

#Set a far expiration date for components
<ifmodule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpg A2592000
ExpiresByType image/jpeg A2592000
  <filesmatch "\.(jpg|gif|png|css|js)$">
       ExpiresDefault "access plus 10 years"
   </filesmatch>
</ifmodule>

#add ETag for components
FileETag MTime Size

访问main.php脚本的标题输出只能修改主脚本的缓存,而不能修改组件。