0
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?

S3 + CloudFront + Route53 で独自ドメインの静的サイトを公開する

Posted at

記事の内容

前回の記事で、簡単に独自ドメインを作成出来ました。

今回は、作成した独自ドメインを使用して、静的サイトを公開してみます。

image.png

対象読者

AWS 初〜中級者。最小構成で安全にhttps公開の手法を知りたい人

記事の長さ

5分で読めます。
30〜60分で構築可能(ACMのDNS検証/CloudFrontの有効化待ち時間を含む)

実行手順

1.ドメイン取得

前回の記事で作成したものを使用します。

2. Route53 にパブリックホストゾーンを作成

Route 53 > Hosted zones > Create hosted zone

  • Domain name登録したドメイン名
  • Type:Public hosted zone

ホストゾーンを選択
写真1.png

ドメイン名を入力し、Create。
image.png

作成直後に表示される NS と SOA を確認。
Xserver 管理画面で当該ドメインの ネームサーバを「Route 53 の NS(4つ)」へ変更

  • image.png
    ※各自使用しているドメインサービスのやり方に従ってください。

3.S3バケットを作成

  1. S3 > Create bucket
    • Bucket name:任意(例)rt-artjp-site-origin(ドメイン名と一致させる必要はありません)
    • Block Public Access有効のまま(全部 ON)
    • バージョニング任意(ON 推奨)
  2. バケット作成後に index.html をアップロード
    • 例の最小 HTML は本文末「付録」を参照。
      image.png
      image.png

4. ACMリクエスト

CloudFront は us-east-1 の証明書のみアタッチ可能。

  1. コンソール右上のリージョンが us-east-1 になっていることを確認

  2. Certificate Manager > Request a certificate > Request a public certificate

写真2.png

そのまま次へ
image.png

ドメイン名を入力して、create。
image.png

※注意:必ず、作成後にRoute53レコード作成というボタンをクリックしてください。
写真3.png

5. CloudFrontディストリビューションを作成

作成をクリック
写真4.png

好きな名前を入力
写真5.png

S3を選択し、さっき作ったs3バケット名を選択。
image.png

有効にしないでください。を選択
image.png

確認後、Create。
image.png

作成後、作成されたディストリビューションを選択し、Add.Domainを選択
写真7.png

ドメイン名を入力
image.png

ACMが正常に紐づいていれば、自動的にACMが表示される。Nextへ
image.png

完成画面。ドメイン名とACM、index.htmlが設定されてあることを確認。
写真6.png

6. Route53でAレコード作成

Cloudfrontディストリビューション名(AWSが自動で割り当ててくれる CloudFrontの公開用ドメイン名)を、自分のドメインに解決するようにします。

Route53 >Hosted zone > Create record
写真8.png

Record name*:空欄(=ルート)

  • Record type:A
  • AliasYes
  • Route traffic to:CloudFront distribution を選択(dxxxxxxxx.cloudfront.net
  • Create records

写真9.png

7.ブラウザで動作確認

** https://自分のドメイン名/** でやってみましょう。

まとめ

・独自ドメインを取得し、Route53・S3・ACM・CloudFrontを組み合わせることで、最小構成で https 対応の静的サイト公開が可能。

・今回の手順をベースに、静的ポートフォリオサイトや転職用の経歴書公開などにすぐ応用できます。

使用したindex.html

## 付録:最小 `index.html`
~~~html
<!doctype html>
<html lang="ja">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width,initial-scale=1" />
  <title>rt-art.jp</title>
  <style>
    body { font-family: system-ui, sans-serif; margin: 0; display: grid; place-items: center; min-height: 100vh; }
    .card { padding: 2rem 3rem; border: 1px solid #ddd; border-radius: 16px; box-shadow: 0 4px 20px rgba(0,0,0,.05); }
  </style>
</head>
<body>
  <main class="card">
    <h1>🚀 Hello from CloudFront + S3</h1>
    <p>このページは <strong>rt-art.jp</strong> を CloudFront 経由で配信しています。</p>
  </main>
</body>
</html>
~~~

0
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
0
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?