我的文档根目录下有一个.htaccess文件,内容如下:
ExpiresActive On ExpiresDefault A0 <FilesMatch "\\.(gif|jpe?g|png)$"> ExpiresDefault A86400 </FilesMatch>
但是,对于特定的子目录/ images / avatar,我只希望年龄为300秒。 因此,我使用以下方法在/ images / avatar下创build了另一个.htaccess:
<IfModule mod_expires.c> ExpiresActive On ExpiresDefault A300 </IfModule>
通过以上设置,我无法为/ images / avatar下的文件强制执行300秒的到期时间。 但是,如果我删除根目录中的.htaccess,将隐含300秒的规则。
任何帮助? 谢谢
我怀疑问题在于Directory选项之后应用的FilesMatch选项。 尝试在你的头像目录中指定一个FilesMatch指令,如下所示:
<FilesMatch "."> ExpiresActive On ExpiresDefault A300 </FilesMatch>
请参阅http://httpd.apache.org/docs/2.0/sections.html ,其中解释了目录选项先应用,然后应用FilesMatch选项。 在你的情况下,你的目录选项设置ExpiresDefault为A300,然后在子目录中的任何匹配文件上应用父文件匹配选项(请记住目录的设置选项影响所有子目录)。