Amazon CloudFront編~マルチオリジンを使ってみよう~

こんにちは!Narimasaです!

前回は「Amazon CloudFront編~EC2からコンテンツを配信してみよう~」と題して、CloudFrontを通じてEC2からコンテンツを配信する方法を紹介しました。
今回は「Amazon CloudFront編~マルチオリジンを使ってみよう~」と題して、CloudFrontの機能であるマルチオリジンを使っていきます。

マルチオリジンとは

Behavior(振り分けルール)によってキャッシュのオリジン(コンテンツのソース)先を設定できます。
この機能を使えば、一つのドメインで静的コンテンツをS3から、動的コンテンツをEC2から配信するように振り分けることができます。

では、早速設定していきましょう。

前準備

Amazon S3バケットに配信したい静的コンテンツをアップロードしておきます。今回はテスト用ファイル(cftest.txt)を用意します。
※S3にコンテンツをアップロードする方法はこちらで紹介しています
 Amazon S3編~S3バケットにファイルをアップロードしてみよう!~

マルチオリジンの設定

CloudFront Distributionの画面を開き、前回使ったDistributionを選択し、「Distribution Settings」をクリックします。
CloudFront Distribution

「Origins」のタブをクリックし、「Create Origin」を選択します。
CloudFront Origins
「Origin Domain Name」の項目をクリックし、追加したいオリジンを入力します。
※Origin IDは自動で設定されます。
CloudFront Origin
「Behavior」のタブをクリックし、「Create Behavior」を選択します。
CloudFront Behavior マルチオリジン

「Path Pattern」の項目に、振り分ける条件となる文字列を入力します。今回は「/*.txt」と入力します。
 また、「Origin」の項目をクリックすると選択できるオリジンが表示されるので、S3のオリジンを選択します。
Cache Behavior Setting

今回はその他の項目はデフォルトのまま作成します。

設定が完了したら「Back to Distributions」をクリックします。
Bahavor setup

立ち上げた直後は「Status」がInProgressになっているのでDeployedになるまで待ちます。(数分かかります)
Deployedになりましたら、コンテンツが配信されているか確認してみます。

配信確認

まずは前回同様、Distributionの「Domain Name」+「/test.php」にアクセスします
Distribution EC2 access

CloudFrontのドメインからknowledgeが表示されているのを確認してください。
CloudFront EC2 access

続いて、Distributionの「Domain Name」+「/cftest.txt」にアクセスします
「test」が表示されていれば成功です!
CloudFront S3 access

いかがでしたでしょうか?
CloudFrontのマルチオリジン機能を使ってコンテンツを振り分けて配信させることができました。
次回は「Amazon CloudFront編~HTTPリダイレクションを使ってみよう~」と題して、新機能のHTTPリダイレクションをご紹介します。

次回もお楽しみに!!!

この記事を書いた人

aws-recipe-user