2009-08-27 4 views
2

私はサイトの読み込み時間を短縮するために遠い将来の期限切れのメソッドを使用しようとしています。djangoで静的ファイルの "far-future expiration date"を実装しようとしています

しかし、Firefoxで静的ファイルにアクセスすると、サーバーはまだHTTP/1.x 304 NOT MODIFIEDで応答します。ファイルが正しくキャッシュされていれば、リクエストは行われませんか?ここで

は、私が持っている、関連のhttpd.confラインは、Apache 2.2のためのものです:

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のは、静的ファイルのいずれも遠未来の有効期限がないことを言います。誰かが私が間違っていることを知っていますか?

答えて

0

あなたのconfに次の行を追加します。

FileETag none 

(ただし、ETagのは、まだあなたの動的なDjangoのビューのために有用である可能性があるため、それは、あなただけの静的ファイルのためにあることを確認します)

+0

おかげで、それはそこに属していないよう

はドキュメントから、それが見えますそれを試しましたが、行動をまったく変えないようです。 –

3

私はわからないんだけどExpiresActive OnがFilesMatchディレクティブに属している場合私は同じことを多く実装しており、私はそれを外に出しました。私は静的ファイルとディレクトリに設定された期限が切れるヘッダ持っ

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

ExpiresActive On 
<Directory /path/to/static/files> 
    ExpiresDefault "access plus 6 months" 
    Header append Cache-Control public 
</Directory> 
+0

それは働いた!ありがとう。 –

+0

回答をアップヴォートし、それを「受け入れる」ことを忘れないでください。 :-) –

関連する問題