我有一个带有Apache2.2.22的站点。我已经启用了mod-expires和mod-headers模块,看起来是正确的:
$ apachectl -t -D DUMP_MODULES
…
expires_module (shared)
headers_module (shared)
…设置包括:
ExpiresActive On
ExpiresDefault "access plus 10 minutes"
ExpiresByType application/xml "access plus 1 minute"通过检查请求的头,我发现对于一般情况和xml文件(这些文件是自动生成的,但大多是静态的),都正确地设置了最大值。
我希望对目录中的xml文件有不同的解释(例如/data),所以http://site/data/sample.xml在24小时后到期。
我在data/.htaccess中输入以下内容:
ExpiresByType application/xml "access plus 24 hours"
Header set Cache-control "max-age=86400, public"但看来apache忽略了这一点。
如何确保apache2使用.htaccess指令?如有要求,我可以提供进一步的资料。
发布于 2012-11-04 17:22:37
由于您可以访问核心配置文件,因此最好将其直接写入其中,在下面的directory部分如下:
<Directory /var/www/data>
ExpiresByType application/xml "access plus 24 hours"
Header set Cache-control "max-age=86400, public"
</Directory>如果您真的想使用.htaccess文件,请确保有:
<Directory /var/www/data>
AllowOverride All
</Directory>https://webmasters.stackexchange.com/questions/36452
复制相似问题