【現役AWSエンジニアが解説】Amazon CloudFrontとは?仕組み・料金・S3連携の使い方まで完全ガイド


「サイトの表示が海外だと遅い」「アクセスが集中するとサーバーが落ちそう」「S3で公開したサイトをもっと速く、安全に届けたい」。そんな悩みを解決する時によく名前が挙がるのが、AWSのAmazon CloudFrontです。
とはいえ、「CDN?ディストリビューション?オリジン?」と、耳慣れない言葉が並んで手が止まってしまう方も多いはずです。この記事では、これからCloudFrontを検討する方に向けて、仕組み・メリット・料金・S3を使った具体的な構築手順までを、AWSの実務に携わる立場から順を追って解説します。読み終えるころには、「自分のサイトやサービスに入れるべきか」「どこから手をつければいいか」がはっきりわかる内容にまとめました。
監修:HIROTO
AWS基盤のインフラ設計・構築から維持運用、チームマネジメントなどを幅広く担当するインフラエンジニア。オンプレからのAWS移行、マルチアカウント化、新規基盤の設計構築などの実績に加え、並行してセキュリティ領域のPJではPLを担当。2025 All AWS Certifications Engineers。
運営元:ALH株式会社
ALH株式会社は、AWSパートナーネットワーク(APN)において、以下の認定を取得しているAWSパートナー企業です。◆ AWS 1000 APN Certification Distinction
AWS認定資格の取得数が1,000件を超えたパートナーに与えられる認定◆ AWS Training Partner
AWS公認の研修トレーニングを提供できるパートナー認定
◆ AWS Select Tier Services Partner
AWSサービスの構築・運用において一定の実績を持つパートナー認定
1. Amazon CloudFrontとは?AWSのCDN(コンテンツ配信ネットワーク)
Amazon CloudFront(アマゾン クラウドフロント)は、Webサイトや動画などのコンテンツを、世界中のユーザーへ高速かつ安全に届けるためのAWSのCDNサービスです。 ユーザーから物理的に近い場所にコンテンツのコピーを置き、そこから配信することで表示速度を上げ、配信元サーバーの負担も軽くします。
1-1. そもそもCDN(コンテンツ配信ネットワーク)とは?
CDN(Content Delivery Network=コンテンツ配信ネットワーク)とは、世界各地に分散配置したサーバーにコンテンツを一時保存(キャッシュ)し、ユーザーに一番近いサーバーから配信する仕組みのことです。
たとえば、東京にあるサーバーだけでWebサイトをホストしていたとします。日本のユーザーは快適でも、アメリカやヨーロッパからアクセスする人は、地球の裏側までデータを取りに行くことになり、どうしても表示が遅くなります。CDNを挟むと、ユーザーの近くにある「中継地点」がコンテンツを代わりに届けてくれるため、距離による遅さを大きく減らせます。
CloudFrontは、このCDNをAWSが提供しているサービスで、世界中に配置された「エッジロケーション」と呼ばれる配信拠点を利用できます。
1-2. CloudFrontが解決する3つの課題
CloudFrontを導入すると、Webサービス運営でよく起きる次の課題に対処できます。
| 課題 | CloudFrontによる解決 |
|---|---|
| 表示が遅い(特に遠隔地・海外) | ユーザーに近いエッジロケーションから配信し、遅延(レイテンシー)を低減 |
| アクセス集中でサーバーが重い | キャッシュがユーザーへ代わりに応答し、配信元サーバーへのアクセスを削減 |
| セキュリティが不安 | HTTPS通信の標準化、WAFやDDoS対策サービスとの連携で防御を強化 |
「速さ」「負荷分散」「セキュリティ」の3つをまとめて底上げできる点が、CloudFrontが選ばれる大きな理由です。
2. CloudFrontの仕組みと5つの構成要素
CloudFrontは「ディストリビューション」という設定を軸に、配信元(オリジン)のコンテンツを世界中のエッジロケーションにキャッシュして届けます。 まずは登場人物を押さえると、仕組み全体がすっきり理解できます。
2-1. ディストリビューション(配信設定の本体)
ディストリビューションとは、「どのオリジンから」「どんなルールで」コンテンツを配信するかを定義する、CloudFrontの設定のかたまりです。 CloudFrontを使うときは、まずこのディストリビューションを1つ作成します。
作成すると、`d111111abcdef8.cloudfront.net` のような専用のドメイン名が割り当てられ、このURL経由でアクセスするとCloudFront配信が始まります。独自ドメイン(例:`www.example.com`)を割り当てることも可能です。
2-2. オリジン(配信元のサーバー)
オリジンとは、配信するコンテンツの「大元」が置かれている場所です。 CloudFrontはオリジンからコンテンツを取得し、それをキャッシュして配信します。オリジンには次のようなものを指定できます。
- Amazon S3バケット(画像・CSS・JS・静的サイトなど)
- Amazon EC2インスタンスやWebサーバー(HTTPサーバー)
- Elastic Load Balancing(ALB)
- AWS Elemental MediaPackage(動画配信)
なかでもS3をオリジンにする構成が最も定番で、この記事の後半で手順を詳しく解説します。
オリジンに使うAmazon S3の基礎はこちら
2-3. エッジロケーションとリージョン別エッジキャッシュ
エッジロケーションとは、CloudFrontがコンテンツをキャッシュして配信する、世界各地のデータセンター(配信拠点)のことです。 ユーザーのリクエストは、地理的に最も近いエッジロケーションへ自動的に振り分けられます。
さらにCloudFrontには、エッジロケーションとオリジンの間に位置するリージョン別エッジキャッシュ(Regional Edge Cache)という中間層があります。エッジロケーションでキャッシュが切れても、まずこの中間キャッシュを確認するため、オリジンへ問い合わせる回数をさらに減らせます。
| 用語 | 役割 |
|---|---|
| エッジロケーション | ユーザーに最も近い配信拠点。ここから直接配信 |
| リージョン別エッジキャッシュ | エッジロケーションとオリジンの間の中間キャッシュ。オリジンへの負荷をさらに軽減 |
| オリジン | コンテンツの大元。キャッシュにない時だけ取りに行く |
2-4. ビヘイビアとキャッシュポリシー(何を・どうキャッシュするか)
ビヘイビア(Behavior)とは、URLのパターンごとに「どのオリジンへ」「どうキャッシュするか」を細かく振り分ける設定です。 たとえば「`/images/` 以下はS3から長めにキャッシュ」「`/api/` 以下はキャッシュせずEC2へ」といった出し分けができます。
キャッシュの保持時間はTTL(Time To Live)という値で管理し、既定では24時間です。この時間を過ぎるとエッジロケーションはオリジンへ最新版を確認しに行きます。
2-5. コンテンツが届くまでの流れ(キャッシュヒットとキャッシュミス)
実際の配信は、次の流れで進みます。
- ユーザーがコンテンツをリクエストする
- リクエストが最寄りのエッジロケーションへ振り分けられる
- エッジにキャッシュがあれば(キャッシュヒット)、そのまま高速に配信
- キャッシュがなければ(キャッシュミス)、オリジンから取得してユーザーへ配信し、同時にエッジへキャッシュ
- 次に同じコンテンツが求められたときは、キャッシュから即座に配信される
この「一度取得したら近くに置いておく」動きが、CloudFrontの速さとサーバー負荷軽減を支えています。(参考:Amazon CloudFront とは何ですか?(AWS公式デベロッパーガイド))
3. CloudFrontを使う4つのメリット
CloudFrontの価値は「速くなる・軽くなる・安全になる・つながる」の4点に集約されます。 順に見ていきます。
3-1. 表示速度が上がる(低レイテンシー)
最大のメリットは、ユーザーに近い拠点から配信することで表示速度(レイテンシー)が改善する点です。 特に海外や地方からのアクセスで効果が出やすく、ページ表示の速さは離脱率やコンバージョン、SEO評価にも影響します。画像や動画が多いサイトほど恩恵は大きくなります。
3-2. オリジンサーバーの負荷とコストを下げる
エッジロケーションのキャッシュがユーザーへ代わりに応答するため、配信元(オリジン)へのアクセス回数が大きく減ります。 これによりオリジンのサーバー負荷が下がり、突発的なアクセス集中にも耐えやすくなります。後述しますが、AWSオリジンからCloudFrontへのデータ転送は無料のため、コスト面でもメリットがあります。
3-3. セキュリティを高める(HTTPS・WAF・Shield)
CloudFrontは配信の入り口としても機能し、セキュリティを底上げします。
- HTTPS通信を標準でサポートし、無料の証明書サービス(AWS Certificate Manager)と連携できる
- AWS WAF(Webアプリケーションファイアウォール)と連携し、不正なアクセスを遮断できる
- AWS Shieldにより、DDoS攻撃(大量アクセスでサービスを止める攻撃)への標準的な防御が備わっている
- 地理的なアクセス制限(特定の国からのアクセスをブロック/許可)も設定できる
3-4. AWSサービスとシームレスに連携できる
S3・EC2・ALB・Lambda@Edge・Route 53・ACMなど、AWSの各サービスと標準で連携できる点も大きな強みです。
個別に組み合わせの設定をせずとも、AWSのコンソール上で自然につながります。すでにAWSでシステムを組んでいるなら、CloudFrontの導入ハードルは低いといえます。
4. CloudFrontの主なユースケース
CloudFrontは「静的コンテンツの配信」「動画配信」「動的コンテンツ/APIの高速化」「アクセス制限」といった場面で活躍します。 代表的な使いどころを紹介します。
4-1. 静的サイト・画像配信の高速化(S3との連携)
最も多いのが、S3に置いた静的Webサイトや画像・CSS・JSファイルを、CloudFront経由で高速配信する構成です。S3単体でも公開はできますが、CloudFrontを重ねることで表示が速くなり、HTTPS化やアクセス制御も可能になります。
4-2. 動画のストリーミング配信
オンデマンド動画やライブ配信でもCloudFrontは広く使われています。大容量の動画を世界中へ安定して届けられるため、動画サービスや配信イベントの基盤として採用されています。
4-3. 動的コンテンツ・APIの高速化
「動的なコンテンツはCDNに向かない」と思われがちですが、CloudFrontはAPIやログイン後のページなど動的コンテンツの高速化にも対応します。AWSの高速なネットワークを経由してオリジンへ届けるため、通信経路の最適化による改善が期待できます。
4-4. アクセス制限・地理的制限(コンテンツ保護)
- 署名付きURL・署名付きCookie:有効期限や条件付きで、特定ユーザーだけにコンテンツを配信
- 地理的制限(Geo Restriction):国単位でアクセスを許可・ブロック
- OAC(Origin Access Control):S3への直接アクセスを禁止し、CloudFront経由に限定(後述)
5. CloudFrontの料金体系|無料枠と課金の考え方
CloudFrontの料金は基本的に「使った分だけ払う従量課金」で、①ユーザーへのデータ転送量と②リクエスト数が主な課金対象です。 加えて、月額固定の定額プランも選べるようになっています。順に整理します。なお大規模に利用する場合は、月10TB以上を一定期間コミットすることでAWSと個別にレートを交渉する「プライベート料金契約(Private Pricing Agreement)」という選択肢もあります。
5-1. 課金される2つの軸
従量課金では、おもに次の2つで料金が決まります。
| 課金対象 | 内容 |
|---|---|
| データ転送アウト | CloudFrontからインターネット(ユーザー)へ送り出したデータ量(GB単位)。地域によって単価が異なる |
| リクエスト数 | HTTP/HTTPSリクエストの件数 |
このほか、キャッシュを手動で消す無効化(Invalidation)リクエストや、追加機能(CloudFront Functions、Lambda@Edgeなど)に応じた料金が発生する場合があります。
従量課金の単価は配信元となるエッジロケーションの地域によって変わるため、日本のサイトが日本のユーザーへ配信する場合は日本の単価が適用されます。
規模感の参考として、日本向けのデータ転送アウトは1GBあたり0.114 USD程度(毎月最初の1TBは無料で、以降は転送量が増えるほど単価が下がります。世界で最も安い米国・欧州は0.085 USD程度)、HTTPSリクエストは100万件あたり1.20 USD程度が目安です(いずれも2026年7月時点の公式値)。
ただし単価は改定されることがあるため、最新の金額は公式ページでの確認をおすすめします。
5-2. AWSオリジンからの転送は無料
コスト設計で押さえておきたいのが、S3やEC2などAWSオリジンからCloudFrontへのデータ転送(オリジンフェッチ)は課金されないという点です。CloudFront経由でトラフィックを配信する場合、この区間の転送料は自動的に免除されます。「S3単体で配信するより、CloudFrontを重ねたほうが転送コストを抑えられる」ケースがあるのはこのためです。(参考:Amazon CloudFrontの料金(AWS公式))
5-3. 無料利用枠と定額プラン
CloudFrontの「無料」には、性質の異なる2つの仕組みがあります。混同しやすいので整理しておきます。
① AWSアカウント単位の無料枠
データ転送アウト1TB/月、HTTP・HTTPSリクエスト1,000万件/月、CloudFront Functions呼び出し200万回/月などが、期間限定ではなく「常時無料(Always Free)」で使えます。AWSアカウント全体に適用され、従量課金・定額プランのどちらを使っていても効きます。
② 定額プランの「Freeプラン」(月額0 USD)
1つのディストリビューションを対象に、データ転送100GB/月・リクエスト100万件/月の割当が付きます。金額は0 USDですが、①とは別枠の仕組みで、WAF・DDoS対策・Route 53 DNS・TLS証明書などがセットになっている点が特徴です。①(1TB)と②(100GB)では割当量が10倍違うため、どちらを前提に見積もるかを意識してください。
そして月額固定の定額プランは、トラフィックが急増しても超過料金が発生しない点が特徴です。
| プラン | 月額 | 含まれるリクエスト | 含まれるデータ転送 |
|---|---|---|---|
| Free(無料) | 0 USD | 100万 | 100 GB |
| Pro | 15 USD | 1,000万 | 50 TB |
| ビジネス | 200 USD | 1億2,500万 | 50 TB |
| プレミアム | 1,000 USD | 5億 | 50 TB |
※上表はAWS公式のCloudFront料金ページに基づく(2026年7月時点で確認)。プレミアムを超える大規模な利用には、価格を個別に見積もる「カスタム料金」が用意されており、利用にはAWSのスペシャリストへの問い合わせが必要です(前述のプライベート料金契約もこの位置づけです)。なお金額・プラン内容は今後改定される場合があります。
定額プランは単なる転送量のパッケージではなく、CDN本体に加えてAWS WAF・DDoS対策・Route 53 DNS・TLS証明書・CloudWatch Logsの取り込み・CloudFront Functions・S3ストレージクレジットまでを1つの月額料金にまとめたものです。上位プランは下位プランの機能をすべて含みます。
利用にあたっては次の制約があります。
- 1プランでカバーできるのは1ディストリビューション・1つのapex(ルート)ドメインまで。プランはアカウント単位ではなくディストリビューション単位で契約する
- AWS WAFのWeb ACLの関連付けが必須で、従量課金に戻さない限り解除できない
- Freeプランは1アカウントあたり3つまで
- Lambda@Edgeを使う場合、その呼び出し分は定額料金の対象外となり別途課金される(軽量な処理であれば、定額プランに含まれるCloudFront Functionsで代替できるケースも多い)
また「超過しても何も起きない」わけではありません。
割当を超えた場合、AWSは追加課金をする代わりにパフォーマンスを制限します(より遠いエッジロケーションからの配信やスループットのスロットリング)。割当の50%・80%・100%に達した時点でメール通知が届くため、上位プランへの切り替えを検討する余裕はあります。
なお、ブロックされたDDoS攻撃やAWS WAFがブロックしたリクエストは、割当に加算されません。
まずはFreeプランや無料枠で挙動を確かめ、規模に応じて従量制か定額プランを選ぶのが現実的な進め方です。
5-4. 従量課金でコストを抑える3つのポイント
以下は従量課金モデルを選んだ場合の考え方です(定額プランでは月額が固定されるため、そもそもこれらの調整は不要です)。
- キャッシュ効率を高める:TTLを適切に設定し、キャッシュヒット率を上げることでオリジンへの問い合わせとリクエスト料金を削減。これは定額プランでもオリジン側のコスト削減に役立ちます
- プライスクラスを絞る:配信対象を主要地域に限定する「プライスクラス」を選ぶと、割高な地域の配信を除外できる(※プライスクラスの指定は従量課金モデルでの設定です。定額プランではエッジロケーションの選択をAWSが自動で管理します)
- 無効化(Invalidation)を多用しない:キャッシュの手動削除は回数に応じて課金されるため、ファイル名にバージョンを付ける運用(例:`style.v2.css`)で無効化そのものを減らす
6. 【実践】CloudFront+S3で静的サイトを配信する使い方
最も定番の「S3をオリジンにした静的サイト配信」を、最新の推奨方式であるOAC(Origin Access Control)を使って構築する流れを解説します。 これができれば、CloudFrontの基本操作はひと通り身につきます。
6-1. 全体像(5ステップ)
- S3バケットを作成し、コンテンツをアップロードする
- CloudFrontディストリビューションを作成し、S3をオリジンに指定する
- OACを設定し、S3はCloudFront経由のみアクセス可能にする
- (任意)独自ドメインとSSL証明書を設定する
- 配信URLで表示を確認する
6-2. ステップ1:S3バケットの作成とアップロード
まず配信元となるS3バケットを作成し、そこにHTMLや画像などのファイルをアップロードします。このときバケットは「パブリックアクセスをブロック」したまま(非公開のまま)で問題ありません。 公開はCloudFront側が担うため、S3を直接インターネットに晒す必要はありません。
6-3. ステップ2:OACでS3オリジンを保護する
OAC(Origin Access Control)とは、S3バケットへの直接アクセスを禁止し、CloudFront経由のリクエストだけを許可する仕組みです。 これにより「CloudFrontのURLでは見られるが、S3のURLを直接叩いても見られない」状態をつくれます。
かつてはOAI(Origin Access Identity)という方式が使われていましたが、現在はより新しいOACが推奨されています。これから作るなら、OACを選びましょう。
6-4. ステップ3:ディストリビューションの作成・設定
CloudFrontのコンソールでディストリビューションを新規作成し、以下を設定します。
- オリジン:先ほど作成したS3バケットを指定
- OAC:新規作成して割り当て(設定後、S3バケットポリシーの更新を求められるので反映)
- ビューワープロトコルポリシー:`Redirect HTTP to HTTPS`(HTTPアクセスをHTTPSへ自動転送)
- デフォルトルートオブジェクト:`index.html` を指定
作成後、割り当てられた`xxxxxxxx.cloudfront.net`のURLにアクセスして、サイトが表示されれば配信成功です。
6-5. ステップ4:独自ドメインとSSL(Route 53+ACM)
独自ドメインで配信したい場合は、次を組み合わせます。
- AWS Certificate Manager(ACM):無料のSSL証明書を発行(※CloudFront用はバージニア北部リージョンで取得する点に注意)
- Amazon Route 53:独自ドメインをCloudFrontのディストリビューションに向ける(エイリアスレコード)
6-6. よくあるつまずき(403エラー・キャッシュ無効化)
- 403 Access Deniedが出る:OACの設定後にS3バケットポリシーが正しく更新されていない、またはデフォルトルートオブジェクト(`index.html`)が未設定なケースが多い
- ファイルを更新したのに反映されない:エッジにキャッシュが残っているため。急ぎで反映したいときは無効化(Invalidation)を実行する(ただし多用は課金対象なので、前述のファイル名バージョニング運用が有効)
7. CloudFrontはキャリアにどう活きる?AWS認定との関係
CloudFrontはAWSの基礎的かつ頻出のサービスで、AWS認定資格の学習範囲にも必ず含まれます。 CDN・キャッシュ・オリジン・エッジといった概念は、Webシステム全体の設計を理解するうえでも土台になります。
特にインフラやクラウドを扱うエンジニアにとって、CloudFrontを「実際に手を動かして構築できる」ことは実務での強みになります。AWSを体系的に学びたい方は、AWS Certified Solutions Architect - Associate(SAA)などの認定取得を通じて、CloudFrontを含むネットワーク・配信設計の知識をまとめて身につけるのが効率的です。
AWS認定資格の種類と取得順についてはこちら
8. よくある質問(FAQ)
Q1. CloudFrontとS3の違いは何ですか?
S3はファイルを保管する「倉庫(ストレージ)」、CloudFrontはそれを世界中へ速く届ける「配送網(CDN)」です。 役割が異なり、対立するものではありません。S3に置いたコンテンツをCloudFrontで配信する、という組み合わせで使うのが一般的です。
Q2. CloudFrontとCloudflareはどちらがよいですか?
どちらも高性能なCDNですが、AWSでシステムを構築しているならCloudFrontが有力です。S3やEC2、WAFなどとの連携がスムーズで、請求もAWSに一本化できます。マルチクラウドや無料枠中心の小規模用途ではCloudflareが選ばれることもあり、要件次第です。
Q3. CloudFrontは無料で使えますか?
性質の異なる2つの無料の仕組みがあり、小規模なら無料で始められます。 1つはAWSアカウント単位の無料枠(データ転送1TB/月、リクエスト1,000万件/月)で、もう1つは定額プランの「Freeプラン」(月額0 USD、1ディストリビューションでデータ転送100GB/月・リクエスト100万件/月+WAFやDNSなどのバンドル)です。割当量が異なるので、どちらを前提に見積もるかを意識してください。規模が大きくなると、従量課金または上位の定額プランの費用が発生します。最新の枠は公式の料金ページで確認してください。
Q4. CloudFrontを導入するとサイトは必ず速くなりますか?
多くの場合は速くなりますが、キャッシュ設定次第です。 キャッシュが効かない設定だと毎回オリジンへ取りに行くため効果が薄れます。TTLやビヘイビアを適切に設定し、キャッシュヒット率を高めることが重要です。
Q5. 「ディストリビューション」とは結局何ですか?
「どのオリジンから、どんなルールで配信するか」をまとめたCloudFrontの設定単位です。 CloudFrontを使うということは、このディストリビューションを1つ作って運用することとほぼ同義です。
まとめ
Amazon CloudFrontについて、要点を振り返ります。
- CloudFrontはAWSのCDN。世界中のエッジロケーションから配信し、「速さ・負荷軽減・セキュリティ」をまとめて底上げする
- 仕組みの中心はディストリビューション。オリジン(S3など)のコンテンツをエッジロケーションにキャッシュして届ける
- S3をオリジンにした静的配信が定番。最新の推奨方式OACでS3を保護しつつCloudFront経由に限定する
- 料金は従量課金が基本で、AWSオリジンからの転送は無料。無料枠・定額プランもあり小規模なら無料で始められる
- CDNの知識はAWS認定資格やインフラ設計の土台になり、実務でも強みになる
まずは無料枠でS3+CloudFrontの小さな配信を一度組んでみると、ここまでの内容が一気に腑に落ちるはずです。手を動かしながら、自分のサービスに合った設計を見つけてください。
参考リンク
いずれも2026年7月時点の情報です。改定される場合があります。
- Amazon CloudFront とは何ですか?(AWS公式デベロッパーガイド)
- Amazon CloudFrontの料金(AWS公式)
- Amazon CloudFront(サービス概要・特徴/AWS公式)
- CDN の開始方法(AWS公式・Getting Started)












