Google PageSpeed Insightsを使用して、ウェブサイトwww.edmhunters.comを高速化しようとしています。
まず、私の.htaccess
ファイルは次のようになります
# -----------------------------------------------------------------------
# Caching for 1 Year
# -----------------------------------------------------------------------
<FilesMatch "\.(ico|svg|woff|eot|ttf)$">
Header set Cache-Control "max-age=31536000, public"
</FilesMatch>
# -----------------------------------------------------------------------
# Caching for 1 Week
# -----------------------------------------------------------------------
<FilesMatch "\.(jpg|png|gif|css|js)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
# -----------------------------------------------------------------------
# Defining MIME types to ensure the web server actually knows about them
# -----------------------------------------------------------------------
<IfModule mod_mime.c>
AddType application/javascript js
AddType application/vnd.ms-fontobject eot
AddType application/x-font-ttf ttf ttc
AddType font/opentype otf
AddType application/x-font-woff woff
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
</Ifmodule>
# -----------------------------------------------------------------------
# Compressing output
# -----------------------------------------------------------------------
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css application/json
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE text/xml application/xml text/x-component
AddOutputFilterByType DEFLATE application/xhtml+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE image/x-icon image/svg+xml application/vnd.ms-fontobject application/x-font-ttf font/opentype
</Ifmodule>
Cache-Control
ヘッダーは奇妙なことに、静的ファイルではなくメディアファイルに対してのみ機能します。
例えば。 redbot.orgのwww.edmhunters.com/media/dj/images/deadmau5_2.jpgの出力は次のようになります
HTTP/1.1 200 OK
Date: Sun, 14 Sep 2014 06:01:54 GMT
Server: Apache/2.4.7 (Ubuntu)
Last-Modified: Thu, 11 Sep 2014 13:52:29 GMT
ETag: "7391-502ca7aba5a6e"
Accept-Ranges: bytes
Content-Length: 29585
Cache-Control: max-age=604800, public
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: image/jpeg
Www.edmhunters.com/static/img/bp-logo.9bf55788f1b6.jpgの出力は次のようになります
HTTP/1.1 200 OK
Date: Sun, 14 Sep 2014 05:43:28 GMT
Server: Apache/2.4.7 (Ubuntu)
Last-Modified: Tue, 26 Aug 2014 05:43:32 GMT
ETag: 1409031812.62
Content-Length: 2592
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: image/jpeg
私のホームページのGoogle PageSpeed Insights によると、HTMLは縮小されますが、 別のページのGoogle PageSpeed Insights によると、HTMLは縮小されません。
なぜこの異なる動作ですか?
Djangoを使用して静的ファイルを提供し、Apacheを使用してメディアファイルを提供していました。 Apacheを介して静的ファイルを提供すると、この問題は解決しました。