【AWS】 CloudFrontでgzipに圧縮し、確認する方法

最終更新日:2026年8月6日

要注意:本記事のスクリーンショットは執筆時点(2020年)のCloudFront管理画面のものです。AWSマネジメントコンソールはその後も継続的に画面デザインが更新されているため、実際の画面と項目の配置が異なる場合があります。「Compress Objects Automatically(オブジェクトを自動的に圧縮)」という設定項目名自体はAWS公式ドキュメントで現在も使用が確認できますが、手順を進める際は表示されている項目名を基準に読み替えてください。

目次

はじめに

この記事ではCloudFrontでgzipに圧縮する前にAmazon S3でバケットを作成し、ファイルをアップロードしていることを前提条件として進めていきます。Amazon S3にファイルをアップロードしていない場合はアップロードを先に終えてからご覧ください。また、アップロードの際はパブリックアクセスを許可するようにしてください。

CloudFrontでディストリビューションを作成

AWSにログインし、CloudFrontのコンソールを開けましょう。「Amazon CloudFront Getting Started」が表示されたら、「Create Distribution」をクリックします。

以下の画面が表示されたら、「Web」のほうの「Get Started」を押します。ちなみに「RTMP」とは音声や動画などのデータを扱うストリーミングのプロトコルになりますが、2020年12月末をもってAWSによるRTMPディストリビューションのサポートは終了しており、現在のCloudFrontコンソールでは「Web」「RTMP」の選択自体が存在せず、単一のディストリビューション作成フローになっています。

「Create Distribution」の「Origin Domain Name」でAmazon S3で作成したバケットを選択してください。自動で表示されるので入力の必要はありません。

「Default Cache Behavior Settings」で以下のように設定していきます。「Compress Objects Automatically」を「Yes」にするとgzipに自動で圧縮されるようになります。ここでは説明のため「No」の状態で進めていきます。

「Distribution Settings」で以下の設定でチェックしていきます。SSL証明やHTTPのバージョン、IPv6などのチェック項目に注意し、右下の「Create Distribution」をクリックします。

すると、Distributionが作成されますが、「States」が進行中を表す「In Progress」と表示されているはずなので、「Deployed」になるまでしばらく待ちます。20分程度かかる可能性があるので待ちましょう。「Status」が「Deployed」になったらOKです。

CloudFrontでgzipに圧縮する

Distributionを作成中にgzipに圧縮していない場合や、すでに登録済みのファイルをあとからgzipに圧縮したい場合は編集画面から設定していきましょう。
DistributionのIDをクリックし、「Behaviors」タブを開けます。gzipに圧縮する該当ファイルにチェックを入れ、「Edit」をクリックします。

すると「Edit Behavior」の画面に遷移するので「Compress Objects Automatically」のチェック項目を「Yes」に変更し「Edit」を押せば完了です。

CloudFrontでgzipに圧縮できるファイル

CloudFrontでgzipに圧縮できるファイルは以下になります。Content-Typeヘッダーに次の値があるか確認をしてください。

  • application/dash+xml
  • application/eot
  • application/font
  • application/font-sfnt
  • application/javascript
  • application/json
  • application/opentype
  • application/otf
  • application/pkcs7-mime
  • application/rss+xml
  • application/truetype
  • application/ttf
  • application/vnd.apple.mpegurl
  • application/vnd.ms-fontobject
  • application/xhtml+xml
  • application/xml
  • application/x-font-opentype
  • application/x-font-truetype
  • application/x-font-ttf
  • application/x-httpd-cgi
  • application/x-javascript
  • application/x-mpegurl
  • application/x-opentype
  • application/x-otf
  • application/x-perl
  • application/x-ttf
  • font/eot
  • font/opentype
  • font/otf
  • font/ttf
  • image/svg+xml
  • text/css
  • text/csv
  • text/html
  • text/javascript
  • text/js
  • text/plain
  • text/richtext
  • text/tab-separated-values
  • text/xml
  • text/x-component
  • text/x-java-source
  • text/x-script
  • vnd.apple.mpegurl

※対象ファイルタイプの一覧はAWSによって更新される可能性があるため、正確な最新リストはAWS公式ドキュメント(Serve compressed files)をご確認ください。

gzipで圧縮配信されているか確認する

CloudFrontでファイルをgzipに圧縮されたか確認するには、Chromeのデベロッパーツールを利用します。「F12」ボタンを押すか、「︙」→「その他のツール」→「デベロッパーツール」で開き、CloudFrontから配信されているファイルの「Network」→「Headers」→「Response Headers」の中に「content-encoding: gzip」とあればgzipで圧縮されて配信されていることが確認できます。

この記事のポイント

  • CloudFrontの「Compress Objects Automatically」を有効にするだけで、対応ファイルタイプが自動的にgzip圧縮されて配信される
  • RTMPディストリビューションは2020年12月末で終了し、現在のCloudFrontコンソールには「Web」「RTMP」の区分自体が存在しない
  • 圧縮の確認はChromeデベロッパーツールのNetworkタブでレスポンスヘッダーの「content-encoding: gzip」を見ればよい

よくある質問

Q. gzip圧縮を有効にすると料金は変わりますか?
A. 「Compress Objects Automatically」機能自体に追加料金はかかりません。むしろ転送データ量が減るため、データ転送量に応じた料金が抑えられる場合があります。
Q. 既存のディストリビューションでもgzip圧縮を後から有効にできますか?
A. 可能です。対象のディストリビューションの「Behaviors」タブから該当のビヘイビアを編集し、「Compress Objects Automatically」を「Yes」に変更してください。
Q. content-encoding: gzipが表示されない場合、何を確認すればよいですか?
A. まず対象ファイルのContent-Typeが圧縮対象のファイルタイプ一覧に含まれているか確認してください。また、ファイルサイズが小さすぎる場合(一般的に1KB未満程度)は圧縮の効果が薄いため圧縮が適用されないことがあります。

おわりに

圧縮して配信することでWebページのサイト表示スピードが早くなり、結果的にSEO効果がUPし上位に表示されやすくなるというメリットがあります。無料で手軽にできるのでCloudFrontを利用したことがない方はぜひ使ってみてください。

▼ アクロビジョンについて

👔

一緒に働きましょう

一人ひとりのキャリアに向き合い、
活躍できる現場をご紹介します。

採用サイトを見る →
💻

システム開発のご依頼・ご相談

コンサルティングから運用保守まで、
ワンストップで対応します。

まずはお気軽にご相談ください →

前の記事

CloudfFormationについて

次の記事

AWS VPCの料金について