katsumasa0514
@katsumasa0514 (ASAP k)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

EC2でデプロイしたアプリをSSL化し終えて、ブラウザで検索をかけると、エラー504が出る。

事前登録

ドメインはお名前.comで2020/04/13に取得しました。
事前登録サイトでroute53のDNSを設定しました。

事前登録サイト

内容

EC2でdjangoアプリをNginxとgunicornを使いデプロイを終え、IPアドレスでアプリを表示することはできました。
その後SSL化をするため参考サイトを元に進めていきました。
エラーなく全てを終え、https + [ドメイン名]で検索するとエラー(504 Gateway Time-out)が出てしまい、行き詰まってしまいました。

参考サイト

試したこと

1、エラーを調べるとタイムアウトが原因だということで、EC2のロードバランサーのアイドルタイムアウトを伸ばしました。
>>>結果は何も変わりませんでした。

2、nginxのエラーログを確認

sudo tail -F /var/log/nginx/error.log

>>>結果はログ自体が一つも出ませんでした。

3、ロードバランサーのエラーログをONにして、S3でログを確認。
>>>結果はエラーはありませんでした。

至らない点も多々あるかと思いますが、よろしくお願いします。

追記

AWSのターゲットグループのヘルスチェックを確認したところ、Unhealthyと表示されており、Status detailsにRequest timed outと表示されています。

0

2Answer

恐らくセキュリティグループの設定でしょう。

具体的には、Application Load Balancer(ALB)は外部からSSL(port443)へのアクセスが許可されたセキュリティグループを設定している必要があり、EC2には参考サイトのままであればhttp(port80)へのアクセスが許可されたセキュリティグループを設定する必要があります。

IPアドレスでアプリを表示することはできました。

とあるので、恐らくEC2にはhttpインバウンドアクセスを許可したセキュリティグループがすでに設定されているのではないかと思われ、主原因はALBの可能性が高そうです。

「alb acm セキュリティグループ」などで検索してセキュリティグループについて調べると良いかと思います。

0Like

Comments

  1. @katsumasa0514

    Questioner

    回答ありがとうございます。
    現在の設定は参考サイトの通りになっています。
    上記の内容で検索させていただきましたが、自分の設定のミスがわかりませんでした。
    参考サイトの設定から、どのように編集すればよろしいでしょうか?
    また、nginxの設定は「listen 80;」「server_name マイIP;」になっています。
    これにも問題がありますでしょうか?

    忙しいところ申し訳ありませんが、よろしくお願いします。

現状は変わっておらず困っています。
ヘルスチェックについて追記しました。
ずっと調べてはいますが、調べ方が悪いのか上手くいきません。

お詳しい方がお見えになりましたら、御助力いただけたらと思います。
よろしくお願いします。

0Like

Your answer might help someone💌