4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ミライトデザインAdvent Calendar 2022

Day 4

S3 で公開した Web ページに CloudFront 経由でアクセスする

Last updated at Posted at 2022-12-04

ミライトデザイン Advent Calendar 2022 の4日目の記事です。

昨日は @Nyokki さんの MySQL についての記事でした。
Nyokki さんの記事は毎回勉強になります。皆さんもぜひ読んでみてください。

前の記事

S3 で静的ページを公開する作業は前の記事で行っている

目的

S3 で公開した静的ページに CloudFront 経由でアクセスできるようにする

利用する AWS の製品

  • CloudFront
  • S3

CloudFront とは

ユーザーへの静的および動的なウェブコンテンツ (.html、.css、.js、イメージファイルなど) の配信を高速化するウェブサービスです。

  • CDN (Content Delivery Network)
  • ユーザーの近くのエッジロケーション(よりユーザーに近い場所)でコンテンツをキャッシュすることで伝達速度を上げる
    • オリジンサーバーの負荷を下げることもできる
  • WAF や ACM と連携することができる

手順

S3 に CloudFront 経由でアクセスできるようにする

CloudFront のマネジメントコンソールを開く

image.png

image.png

オリジンドメインに S3 のドメインを入力

image.png

デフォルトルートオブジェクトindex.html に設定

image.png

ディストリビューションの作成をクリック

image.png

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3336343737332f32303839626137342d633830332d653936632d373634652d3762666430336135383530642e706e67.png

ディストリビューションドメイン名 の URL にアクセスする
この場合は http://dbkvvvys56dhy.cloudfront.net/ にアクセス

スクリーンショット 2022-11-13 17.48.09.png

S3 と同じ HTML, CSS が表示されることが確認できる

X-CacheHit from cloudfront となっており、cloud front からキャッシュを取得できている

(反映までしばらく時間がかかる)

CloudFront からのアクセスに限定する

現状だと S3 に直接アクセスできてしまうので、リソースへのアクセスを CloudFront 経由限定にする

S3 の静的ホスティングを無効化し、ポリシーを CloudFront からのアクセス限定に書き換えることでアクセスを限定する

S3 の静的ホスティングを無効化する

S3 のコンソールを開き対象のバケットの アクセス許可 タブへ移動

image.png

バケットポリシー を削除する

image.png

プロパティ へ静的ホスティングを無効化する

image.png

編集 をクリック

image.png

image.png

CloudFront の設定を変更する

CloudFront のオリジンを編集

image.png

image.png

Origin access control settings (recommended) を選択

image.png

コントロール設定を作成をクリック

image.png

ポリシーをコピー して S3 へ移動

image.png

バケットポリシーを編集

image.png

コピーしたポリシーを貼り付けし、編集を保存
(アクセスを CloudFront 限定にするような内容が書かれている)

image.png

CloudFront の変更を保存をクリック

image.png

最終変更日時 に日付が入っていれば変更が完了

68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f3336343737332f64313966373834362d666637612d316331312d396138632d3564336462663235666136342e706e67.png

ページが確認できる

image.png

参考

おわり

明日は bucchi さんの CSS についての記事です。
自分は CSS 苦手なので、どんな内容か楽しみです!!

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?