環境
rails 5.2.4
unicorn
nginx
EC2でIPアドレスを取得済み
ROUTE53でドメイン取得済み
個人開発したアプリをhttps化したい方向け
参考記事
【初心者向け】AWSのサービスを使ってWebサーバーをHTTPS化する
https://dev.classmethod.jp/articles/aws-web-server-https-for-beginner/
上記の記事を参考にしてhttps化をしようと試みたところ、難しいところがあったので参考になればと思い書き留めておく。つまづいたところだけ書くので基本は上記記事を参考にしてください。
## 個人開発したアプリをhttps化したい。
あるていどアプリが形にはなったのだが、友人に使用してもらうにはhttps化しないと自信をもってつかってください!と言いにくいし、不完全だと感じていた。同じような思いをもっている駆け出しエンジニアの方も多いのではないだろうか
調べたところ、AWSのEC2とROUTE53を使用している場合は、ACMからセキュリティ証明書を取得し(取得自体は無料)、ロードバランサーを適用するのが簡単なようだった。上記の記事を参考にして進めてみた。
①AWSコンソールでは、最初に右上のリージョンを確認しよう。
最初にAWSコンソールにログインしたところ、us-east-1になっていたのだがそこに気づかないまま進めてしまった。リージョンを起動しているEC2インスタンスと同じにしましょう。
②証明書を取得する際にはドメイン名を正しく入力しよう。
何を当たり前のことを言っているのかと思うんですが、私の場合*.ドメイン名
で証明書を取得しましたが、ワイルドカードを使う必要はなく、ドメイン名
そのままでACMでセキュリティ証明書を取得すればいいです。
③ROUTE53でホストゾーンの設定からALBを設定する。
1.ホストゾーンの詳細からAタイプにチェックを入れ、レコードを編集する。
2.値/トラフィックのルーティング先を変更する。おそらく変更前はIPアドレスになっているのではないでしょうか。プルダウンを正しく選択していけば、リージョンを選択した後に選択できるはずです。
もし、うまくいかない場合はセキュリティグループ、ターゲットグループの設定にミスがあるかもしれません。すでにアプリをAWSにデプロイできているならば、nginxの設定などはいじらなくてもいいようです。ただアプリの構成などでこのへんは変わってくるかもしれません。