質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Elastic Load Balancing

Elastic Load Balancingは、Amazon社が提供する、 EC2インスタンス間で自動的にトラフィックの負荷分散を行うサービスです。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

Q&A

1回答

4706閲覧

EC2でデプロイしたアプリをSSL化したい no "ssl_certificate" is defined ロードバランサたぶん設定できた 証明書とってRoute53エイリアス指定できた

annaPanda

総合スコア130

Elastic Load Balancing

Elastic Load Balancingは、Amazon社が提供する、 EC2インスタンス間で自動的にトラフィックの負荷分散を行うサービスです。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

0グッド

0クリップ

投稿2020/04/14 04:52

すでにドメインでの公開が済んでいるRailsアプリをhttpsで公開したいと考えています。

Qiita記事等を参考にしています。
もともとVPCやサブネット等も設定せずにEC2からいきなり入っていたのでそれらはデフォルト設定?になっているかと思うのですが、ロードバランサというものが必要とわかり後から加えました。
証明書はとってRoute53でエイリアス指定はしました。

/etc/nginx/nginx.conf

server { listen 80; proxy_set_header X-Forwarded-Proto $scheme; if ( $http_x_forwarded_proto != 'https' ) { return 301 https://$host$request_uri; } # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } } #httpsサーバー server { listen 443 ssl; server_name ドメイン名.xyz; }

と書き換えて、sudo service nginx restartしたところ

nginx: [emerg] no "ssl_certificate" is defined for the "listen ... ssl" directive in /etc/nginx/nginx.conf:63 nginx: configuration file /etc/nginx/nginx.conf test failed

と言われてしまいました。
確かに証明書をエクスポートしていないかもしれません。。

関連があるかわかりませんが、ロードバランサのターゲットグループを見ると
イメージ説明
unhealthyとなっています。

初心者につきかなり手探りで行なっています。
何か少しでもアドバイスをいただけたらと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

まずは、ELB-EC2間の通信ををHTTPにするかHTTPSにするかを決めてください。

  • HTTPにする場合…EC2側でHTTPSをリッスンする必要自体がありません。そのまま80番のHTTPを待ち受けてください。
  • HTTPSにする場合…ELBに入れたのとは別の証明書が必要です。

あと、ELBのヘルスチェックは、特定のURLをHTTPアクセスして、それが200 OKを返すかで判定します。無条件でHTTPアクセスに301でリダイレクトをかけていると対応できませんので、ヘルスチェック用URLだけはそのまま応答させるような設定が必要です。

投稿2020/04/14 05:18

maisumakun

総合スコア146018

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

annaPanda

2020/04/14 06:07

回答ありがとうございます。 > ELB-EC2間の通信ををHTTPにするかHTTPSにするか 内部はHTTPのままでも外部からはHTTPSにできるのですね。では、取り急ぎELB-EC2間はHTTPにしようとおもうので、元に戻しました。 今度はブラウザから見てみると https://gyazo.com/2fd2f2008e99ee01d60a85db8516be6a これはロードバランサのEC2との通信設定がおかしいということですよね? ELB-EC2間の通信ををHTTPにするには https://gyazo.com/7a8fdab5c48a5ab96c655614df03956f ここのHTTPSの削除ですか? ロードバランサの意味を理解出来ておらずヘンテコな質問をしているかもしれません。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問