S3に置いたメディアをCloudFrontから配信する

WordPressの画像等のメディアを、AWSのCDNである「CloudFront」から配信させたいと思います。
「CloudFront」は世界各地からのアクセスに対して、世界中に設置された edge locatin にキャッシュを配置しレスポンスの高速化を実現します。

参考「Cloud Front」について:

Webサイトのレスポンスを高速化する「Cloud Front」

まず、S3に置いたメディアファイルをCloudFrontから配信できるように設定します。以下のステップで作業します。

  1. AWSのIAMを取得
  2. S3でバケットを作成
  3. 作成したバケットをCloudFrontで配信させる

AWSのIAMを取得

AWSのコンソールで、IAMのメニューを選び、「ユーザー」をクリックし、その後開いたユーザー画面で「ユーザーを追加」を押します。

ユーザー名を入力し、アクセスのアクセスの種類は「プログラムによるアクセス」をチェックし、「次のステップ」をクリックします。

「グループに追加」を選択し、「グループの作成」をクリックします。

グループ名を入力し、「AmazonS3FullAccess」にチェックを入れて「グループの作成」をクリックします。

作成したグループにチェックを入れ、「確認」ボタンを押し、次の画面で「ユーザーの作成」ボタンを押します。

作成されたユーザー情報画面で、「アクセスキー ID」「シークレットアクセスキー」を記録しておきます。

S3でバケットを作成

AWSコンソールのS3メニューを開き、バゲットを作成します。

バゲット名、リージョン等を入力してバゲット作成ステップを進める。それ以外の項目は適宜設定するが、特に何も設定しなくても大丈夫です。

作成したバケットをCloudFrontで配信させる

AWSのコンソールで、CloudFrontのメニューを選び、「Create Distribution」をクリックします。

「Web」セクションの「Get Started」をクリックします。

Origin Domain Name 入力欄をクリックすると、対象のバゲットが表示されるので、先に作成したバゲットを選びます。それ以降の項目は下記を参考に入力します。

 

「Create Distribution」をクリックします。一覧上のStatus欄で「In Progress」が「Deployed」になれば全エッジに設定が適用され、利用可能になります。

作成したDistributionの詳細にある「Domain Name」が、CloudFront経由でS3のオブジェクトにアクセスするドメインです。
Wordpressの記事の画像は、このドメインのURLで埋め込むことになります。

以下は、Wordpress のプラグインで簡単にCMSの画像をS3へアップロードし、今回構築した CloudFrontで配信する方法について記載しています。

WP Offload S3 プラグインでwordpressの画像をS3にアップロード

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  • ad