CloudFront 標準ディストリビューションの開始方法 - Amazon CloudFront

CloudFront 標準ディストリビューションの開始方法

このセクションの手順では、CloudFront を使用して、次のことを行う標準ディストリビューションをセットアップする方法について説明します。

  • ディストリビューションオリジンとして使用する S3 バケットを作成します。

  • オブジェクトの元のバージョンを Amazon Simple Storage Service (Amazon S3) バケットに保存します。

  • オリジンアクセスコントロール (OAC) を使用して、認証済みのリクエストを Amazon S3 オリジンに送信します。OAC は CloudFront を介してリクエストを送信することで、ビューワーが S3 バケットに直接アクセスできないようにします。OAS の詳細については、「Amazon S3 オリジンへのアクセスを制限する」を参照してください。

  • オブジェクトの URL で CloudFront ドメイン名を使用します (例: https://d111111abcdef8.cloudfront.net/index.html)。

  • オブジェクトを、デフォルトの 24 時間 (最小時間は 0 秒) にわたって、CloudFront エッジロケーションに保存します。

このほとんどは、CloudFront ディストリビューションを作成するときに自動的に設定されます。

前提条件

この作業を開始する前に、必ず「AWS アカウント のセットアップ」のステップを完了してください。

Amazon S3 バケットを作成する

Amazon S3 バケットは、ファイル (オブジェクト) やフォルダのコンテナです。CloudFront では、S3 バケットがソースである場合、ほとんどのタイプのファイルを配信できます。たとえば、CloudFront では、テキスト、画像、ビデオを配信できます。Amazon S3 に保存できるデータ量に上限はありません。

このチュートリアルでは、基本的なウェブページを作成するために提供されたサンプルの hello world ファイルを使用して S3 バケットを作成します。

バケットを作成するには

  1. AWS Management Console にサインインし、Amazon S3 コンソール https://console.aws.amazon.com/s3/ を開きます。

  2. この「開始方法」では、Hello World サンプルを使用することをお勧めします。hello world ウェブページ (hello-world-html.zip) をダウンロードします。解凍して、css フォルダと index ファイルを使いやすい場所 (ブラウザを実行しているデスクトップなど) に保存します。

  3. [バケットを作成] を選択します。

  4. 「Amazon Simple Storage Service ユーザーガイド」の「汎用バケットの命名規則」に準拠した一意のバケット名を入力します。

  5. [リージョン] では、地理的に近い AWS リージョンを選択することをお勧めします (これにより、レイテンシーが短縮され、コストが削減されます)。

    • 別のリージョンを選択することもできます。規制要件に対応する場合などは、別のリージョンを選択することがあります。

  6. 他のすべての設定はデフォルトのままにして、[バケットを作成] を選択します。

コンテンツをバケットにアップロードする

Amazon S3 バケットを作成したら、解凍した hello world ファイルの内容をバケットにアップロードします (このファイルは Amazon S3 バケットを作成する にダウンロードして解凍しました)。

コンテンツを Amazon S3 にアップロードするには
  1. [汎用バケット] セクションで、新しいバケットの名前を選択します。

  2. [アップロード] を選択します。

  3. [アップロード] ページで、css フォルダと index ファイルをドロップ領域内にドラッグします。

  4. 他のすべての設定はデフォルトのままにして、[アップロード] を選択します。

OAC を使用する Amazon S3 オリジンで CloudFront ディストリビューションを作成する

このチュートリアルでは、オリジンアクセスコントロール (OAC) で Amazon S3 オリジンを使用する CloudFront ディストリビューションを作成します。OAC は、認証済みのリクエストを Amazon S3 オリジンに安全に送信するのに役立ちます。OAC の詳細については、「Amazon S3 オリジンへのアクセスを制限する」を参照してください。

OAC を使用する Amazon S3 オリジンで CloudFront ディストリビューションを作成するには
  1. CloudFront コンソール (https://console.aws.amazon.com/cloudfront/v4/home) を開きます。

  2. [ディストリビューションの作成] を選択します。

  3. 標準ディストリビューションの [ディストリビューション名] を入力します。名前は、タグの Name キーの値として表示されます。この値は、後で変更することができます。標準ディストリビューションには最大 50 個のタグを追加できます。詳細については、「ディストリビューションのタグ付け」を参照してください。

  4. [単一のウェブサイトまたはアプリ][次へ] を選択します。

  5. [次へ] を選択します。

  6. [オリジンタイプ] ページで、[Amazon S3] を選択します。

  7. [S3 オリジン] で、[S3 を参照] を選択し、このチュートリアル用に作成した S3 バケットを選択します。

  8. [設定] で、[推奨されるオリジン設定を使用する] を選択します。CloudFront は、オリジンアクセスコントロール (OAC) の設定など、Amazon S3 オリジンに推奨されるデフォルトのキャッシュとオリジン設定を使用します。推奨設定の詳細については、「事前設定されたディストリビューション設定リファレンス」を参照してください。

  9. [次へ] を選択します。

  10. [セキュリティ保護を有効にする] ページで、AWS WAF セキュリティ保護を有効にするかどうかを選択します。

  11. [次へ] を選択します。

  12. [ディストリビューションの作成] を選択します。CloudFront は S3 バケットポリシーを更新します。

  13. 新しいディストリビューションの [詳細] セクションを確認します。ディストリビューションのデプロイが完了すると、[最終変更日] フィールドが [デプロイ中] から 日付と時刻に変わります。

  14. CloudFront がディストリビューションに割り当てるドメイン名を記録します。この表示は以下のようになります: d111111abcdef8.cloudfront.net

このチュートリアルのディストリビューションと S3 バケットを本番環境で使用する前に、特定のニーズに合うように設定してください。本番環境でのアクセス権の設定方法については、「コンテンツへのセキュアなアクセスの設定とアクセスの制限」を参照してください。

CloudFront を介してコンテンツにアクセスする

CloudFront からコンテンツにアクセスするには、CloudFront ディストリビューションのドメイン名と、コンテンツのメインページを組み合わせます (ディストリビューションのドメイン名は OAC を使用する Amazon S3 オリジンで CloudFront ディストリビューションを作成する に記録しました)。

  • ディストリビューションのドメイン名は、d111111abcdef8.cloudfront.net のようになります。

  • 通常、ウェブサイトのメインページへのパスは /index.html です。

したがって、CloudFront からコンテンツにアクセスするための URL は次のようになります。

https://d111111abcdef8.cloudfront.net/index.html.

前の手順に従い、Hello World のウェブページを使用している場合は、[Hello world!] と記載されたウェブページが表示されるはずです。

この S3 バケットに追加のコンテンツをアップロードした場合、CloudFront ディストリビューションのドメイン名と S3 バケット内のオブジェクトへのパスを組み合わせることで、CloudFront からコンテンツにアクセスできます。例えば、new-page.html という名前の新しいファイルを S3 バケットのルートにアップロードした場合、URL は次のようになります。

https://d111111abcdef8.cloudfront.net/new-page.html.

クリーンアップ

学習目的のためだけにディストリビューションと S3 バケットを作成した場合は、削除して料金が発生しないようにします。最初にディストリビューションを削除します。詳細については、以下のリンクを参照してください。

基本的なディストリビューションを拡張する

この開始方法チュートリアルでは、ディストリビューションを作成するための最小限のフレームワークを提供します。以下の拡張機能を試してみることをお勧めします。