Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • ドキュメント
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • ドキュメント
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku のアーキテクチャ
    • Dyno (アプリコンテナ)
    • スタック (オペレーティングシステムイメージ)
    • ネットワーキングと DNS
    • プラットフォームポリシー
    • プラットフォームの原則
  • コマンドライン
  • デプロイ
    • Git を使用したデプロイ
    • Docker によるデプロイ
    • デプロイ統合
  • 継続的デリバリー
    • 継続的統合
  • 言語サポート
    • Node.js
    • Ruby
      • Bundler の使用
      • Rails のサポート
    • Python
      • Django の使用
      • Python でのバックグランドジョブ
    • Java
      • Maven の使用
      • Java でのデータベース操作
      • Play Framework の使用
      • Spring Boot の使用
      • Java の高度なトピック
    • PHP
    • Go
      • Go の依存関係管理
    • Scala
    • Clojure
  • データベースとデータ管理
    • Heroku Postgres
      • Postgres の基礎
      • Postgres のパフォーマンス
      • Postgres のデータ転送と保持
      • Postgres の可用性
      • Postgres の特別なトピック
    • Heroku Redis
    • Apache Kafka on Heroku
    • その他のデータストア
  • モニタリングとメトリクス
    • ログ記録
  • アプリのパフォーマンス
  • アドオン
    • すべてのアドオン
  • 共同作業
  • セキュリティ
    • アプリのセキュリティ
    • ID と認証
    • コンプライアンス
  • Heroku Enterprise
    • Private Space
      • インフラストラクチャネットワーキング
    • Enterprise Accounts
    • Enterprise Team
    • Heroku Connect (Salesforce 同期)
    • シングルサインオン (SSO)
  • パターンとベストプラクティス
  • Heroku の拡張
    • Platform API
    • アプリの Webhook
    • Heroku Labs
    • アドオンのビルド
      • アドオン開発のタスク
      • アドオン API
      • アドオンのガイドラインと要件
    • CLI プラグインのビルド
    • 開発ビルドパック
    • Dev Center
  • アカウントと請求
  • トラブルシューティングとサポート
  • Heroku のアーキテクチャ
  • ネットワーキングと DNS
  • Amazon Route 53 DNS を Heroku アプリ用に設定する

Amazon Route 53 DNS を Heroku アプリ用に設定する

日本語 — Switch to English

この記事の英語版に更新があります。ご覧の翻訳には含まれていない変更点があるかもしれません。

最終更新日 2019年10月09日(水)

Table of Contents

  • 前提条件
  • 概要
  • ホストゾーン
  • CNAME レコード
  • ネイキッド/ルートドメイン
  • Route 53 をアクティベートする

​Domain Name System (DNS)​ は、人間に解読可能なドメイン名 (たとえば ​www.heroku.com​) を機械で指定可能な IP アドレス (たとえば ​23.21.47.33​) へ対応付けするインターネットのルーティング層です。

Amazon AWS の DNS サービスは ​Route 53​ と呼ばれる、可用性と拡張性の高いサービスです。既存の AWS インフラストラクチャコンポーネントを備えたユーザーは、Route 53 を DNS プロバイダーとして使用すると便利です。

このガイドでは、Heroku アプリの DNS 設定を Route 53 でセットアップする手順について説明します。

​

前提条件

​

アプリの DNS を設定する前に、Heroku CLI を使用してドメイン名をアプリケーションにアタッチしたことを確認してください。これは、サードパーティ製 DNS の変更に加えて、特定のドメインのトラフィックを Heroku で正しいアプリケーションへ適正にルーティングするために必要です。

まだこのようにアタッチされていない場合は、正しいドメインをアプリにアタッチしてください。

$ heroku domains:add example.com
$ heroku domains:add www.example.com

必ずアプリケーションが使用するすべてのドメインを、サブドメインも含めて指定してください。

​

概要

​

あらゆる DNS プロバイダーと同様、Heroku アプリの DNS を設定する際は以下の手順が必要になります。

  1. ​www.example.com​ から ​example.herokuapp.com​ へ、または ​SSL エンドポイント​ (SSL を使用している場合) へ対応付けするための CNAME レコードを作成します。
  2. ルートドメイン ​example.com​ から ​www.example.com​ へのリダイレクトを確立して、​ルートドメインと A レコードに関するリスク​を回避します。
  3. Route 53 サーバーをドメインのネームサーバーとして設定します。

Route 53 では標準的な業界用語と異なる用語を使用しています。そのため、このガイドでは他のガイドと大きな違いがあります。

​

ホストゾーン

​

ホストゾーンとは、1 つのドメインの設定を構成する DNS レコードのコレクションについての Route 53 の用語です。Route 53 で設定するドメイン毎にホストゾーンを作成する必要があります。

​AWS 管理コンソール​にサインインして、​Route 53​ サービスを選択します。​Create Hosted Zone​ (ホストゾーンを作成) ボタンをクリックして、設定しているドメイン名を入力します。

ルートドメイン名をホストゾーンで使用します (例: ​example.com​)。

​

CNAME レコード

​

新しいレコード (​www​ CNAME レコードなど) が Route 53 にレコードセットとして追加されます。

レコードセットを作成するには:

  1. 新規作成したホストゾーンをドメインとして選択して、​Go to Record Sets​ (レコードセットへ移動) ボタンをクリックします。
  2. Record Sets ビューで、​Create a Record Set​ (レコードセットを作成) ボタンをクリックします。
  3. Create Record Set ウィンドウが開きます。Name フィールドで、名前 ​www​ を入力します (www.example.com など)。Type フィールドで、​CNAME​ タイプを選択します。Value フィールドで、アプリを SSL 保護していない場合は、アプリのデフォルト Heroku ドメインを値フィールドに入力します。アプリの Heroku ドメインは、Heroku アプリ名の後に ​.herokuapp.com​ が続きます。

​Create Record Set (レコードセットを作成)​

あるいは、​SSL エンドポイント​を使用してアプリを保護している場合は、​your-endpoint-12345.herokussl.com​ エンドポイント URL を [Value (値)] フィールドへ代わりに入力します。

​Create SSL Record Set (SSL レコードセットを作成)​

​heroku certs​ コマンドを使用すると、SSL エンドポイント URL がわからない場合に調べることができます。

$ heroku certs
Endpoint                 Common Name(s)       Expires                  Trusted
 -----------------------  -------------------  -----------------------  -------
tokyo-2121.herokussl.com  www.example.com     2013-04-20 17:29:41 PDT  True

フォーム最下部の ​Create Record Set​ (レコードセットを作成) をクリックして ​www​ CNAME レコードマッピングを保存します。

​

ネイキッド/ルートドメイン

​

S3 では SSL 証明書を設定できないので、Route 53 を使用して HTTPS でルートドメインを簡単にリダイレクトすることができません。ルートドメインのリダイレクトが必要な場合は、CNAME/エイリアスレコードルートドメインを提供する DNS プロバイダーを使用することを検討してください。詳細については、​カスタムドメイン​ Dev Center の記事、あるいは​このブログ投稿​を参照してください。SSL ネイキッドドメインリダイレクトを設定する方法が説明されています。

Route 53 がサポートしているエイリアスレコードは、Amazon S3 静的 Web サイトを使用して、ネイキッドドメインを対応する ​www​ に、301 リダイレクトを使用して動的に解決します。たとえば、​example.com​ を ​www.example.com​ に解決します。

​AWS 管理コンソール​へ移動して、S3 管理コンソールを開きます。

エイリアスレコードを Route 53 で作成しているとき次のバケットが表示されるようにするには、バケットの名前をホストゾーンとまったく同じにしなければなりません。たとえば、ホストゾーンが ​example.com​ の場合、バケットの名前を ​example.com​ にします。

新規作成したバケットを選択します。ただし開かないでください。​Properties​ (プロパティ) タブをクリックして、Static Website Hosting セクションを開きます。

​Redirect all requests to another host name​ (すべてのリクエストを他のホスト名へリダイレクト) をクリックすると、​www.example.com​ があらかじめ入力されています。入力されていない場合は、​www.example.com​ を入力してください。

リダイレクト設定を保存してから、​example.com​ の Route 53 ホストゾーンを開きます。

新しいレコードセットを作成します。名前は空白のままにします。​A​ タイプを選択します。エイリアスを ​Yes​ (はい) に設定して、エイリアスターゲットドロップダウンの S3 Website Endpoints セクションから ​example.com​ を選択します。

レコードセットを作成します。

ドメイン ​example.com​ が ​www.example.com​ へスケーラブルな方法でリダイレクトされるようになります。Route 53 と Amazon S3 を使用して、Heroku アプリに解決されるネイキッドドメインをセットアップしました。

​

Route 53 をアクティベートする

​

この時点で、正しい DNS 設定が確立されました。しかしこの設定を使用しているリクエストがありません。Route 53 DNS がアプリケーションでアクティブになるためには、ドメインレジストラ (GoDaddy、DNSimple、NameCheap、1&1 など) にホストゾーンの Route 53 ネームサーバーを使用するよう指定する必要があります。

ホストゾーンのリストに戻って、新しいホストゾーンを選択します。サイドバーで ​Delegation Set​ (委任セット) セクションがあらかじめ入力されています。これらは、Route 53 がアプリのドメインを解決できるようにドメインレジストラに指定するネームサーバーです。

ネームサーバーの更新についてレジストラの説明を参照してください。

この​Delegation Set​ (委任セット) をレジストラに入力して、Route 53 をアプリケーションでアクティブにします。ネームサーバーが完全にアクティブになるまで最長で 48 時間かかります。

関連カテゴリー

  • ネットワーキングと DNS
アプリのカスタムドメイン名 DNS A レコードの制限

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing

Subscribe to our monthly newsletter

Your email address:

  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany

 © Salesforce.com

  • heroku.com
  • Terms of Service
  • Privacy
  • Cookies