2

我正在尝试使用远期过期方法来减少我网站的加载时间。

但是,当我在 Firefox 中访问静态文件时,服务器仍然以 HTTP/1.x 304 NOT MODIFIED 响应。如果文件被缓存,甚至不应该发出请求吗?

以下是我为 apache 2.2 提供的相关 httpd.conf 行:

LoadModule expires_module modules/mod_expires.so
LoadModule headers_module modules/mod_headers.so

<FilesMatch "\.(ico|pdf|flv|jpe?g|png|gif|js|css|swf)$">
ExpiresActive On
ExpiresDefault "access plus 1 year" </FilesMatch>

YSlow 说没有一个静态文件有一个遥远的未来到期日期。有谁知道我做错了什么?

4

2 回答 2

3

我不确定是否ExpiresActive On属于 FilesMatch 指令。我已经实现了很多相同的东西,我把它放在外面。

从文档中,它看起来不属于那里:

http://publib.boulder.ibm.com/httpserv/manual60/mod/mod_expires.html#expiresactive

我在带有静态文件的目录上设置了 expires 标头:

ExpiresActive On
<Directory /path/to/static/files>
    ExpiresDefault "access plus 6 months"
    Header append Cache-Control public
</Directory>
于 2009-08-28T00:32:48.683 回答
0

将此行添加到您的 conf:

FileETag none

(尽管确保它仅适用于您的静态文件,因为 etag 仍然对您的动态 Django 视图有用)

于 2009-08-27T21:41:49.050 回答