API Gatewayで設定したAPIにアクセスする際、api-id.execute-api.region.amazonaws.com といった形式のURLではなく、カスタムドメインでアクセスする方法について取り上げます。
ここでは、あらかじめ作成したAPI Gatewayにカスタムドメインを設定して動作確認します。
目次
SSL証明書を発行
( AWS Certificate Manager )
下記ページで取り上げています。
AWS|ACMでSSL証明書を発行 – わくわくBank
独自ドメインを設定
( API Gateway )
API Gatewayのエンドポイント

上記のように、https://xxxxx.execute-api.ap-northeast-1.amazonaws.com/xxxx の形式でアクセスできますが、カスタムドメインでもアクセスできるように設定します。
カスタムドメインの設定

API Gatewayの管理画面です。カスタムドメイン名をクリックします。

ドメイン名に設定したいカスタムドメインを入力します。
エンドポイントの設定は、今回はリージョンを選択してます。
同一リージョンのACMで作成した証明書を選択します。
エッジ最適化とリージョンについて
- エッジ最適化
- CloudFrontネットワークにデプロイされます。
 - 一番近いCloudFrontにアクセスされます。
 
 - リージョン
- リージョンにデプロイされます。
 - CloudFrontを判定するオーバヘッドはありません。
 
 - 参考
 
ベースパスマッピング

カスタムドメインのベースパス( https://{カスタムドメイン}/{basePath} ) とAPI GatewayのURLをマッピングさせます。
今回はルートで登録するため、ベースパスに何も入力せず、紐づけたいAPI Gatewayだけを指定しています。

設定完了しました。
この後、ターゲットドメイン名をRoute53の設定で利用します。
DNS設定
( Route53 )
ALIASレコード登録

名前でカスタムドメインを設定します。
エイリアス先に先ほどのターゲットドメイン名を設定します。
動作確認
今回、あらかじめ作成したAPI Gatewayにカスタムドメインを設定しました。
なので、下記2つの方法でアクセスできるようになりました。
$ curl https://xxxxxxxx.execute-api.ap-northeast-1.amazonaws.com/dev/message?name=wakuwaku
Hello wakuwaku$ curl https://{カスタムドメイン}/message?name=wakuwaku
Hello wakuwaku