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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Gunicorn

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Amazon EC2

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

Q&A

0回答

1037閲覧

djangoプロジェクトとAWSにデプロイしてnginxとgunicornを使ってサーバー起動すると502 Bad Gatewayと出てしまう

pre_pv

総合スコア0

Gunicorn

Gunicorn (Green Unicorn)は、Rubyのunicornをベースに開発されたUNIX向けのPython製HTTPサーバです。他のライブラリとの依存関係がないため、容易にインストールして使用できます。

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Amazon EC2

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

0グッド

0クリップ

投稿2021/12/06 02:42

編集2021/12/06 02:44

djangoで作ったプロジェクトをgit経由でデプロイしていたのですが、manage.pyをつかったrunserverでは正常に起動するのに、
gunicorn,ngnixを使用したサーバー起動に進むと502 Bad Gatewayと出てしまいます。

https://qiita.com/Bashi50/items/d5bc47eeb9668304aaa2
こちらのサイトを参考にしつつ進めていたのですが解決できずに困っております。

djangoプロジェクトの構成は
mybook>mybook,cms,manage.pyの構成でgithubに挙げており

gunicorn側の設定が
[Install]
WantedBy=multi-user.target```ここに言語を入力
コード

[Unit] Description=gunicorn daemon After=network.target [Service] User=ubuntu Group=www-data WorkingDirectory=/home/ubuntu/mybook ExecStart=/home/ubuntu/django/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/mybook/mybook.socket mybook.wsgi:application コード

と記述しており
sudo systemctl status gunicornを使用したステータスチェックでは

● gunicorn.service - gunicorn daemon Loaded: loaded (/etc/systemd/system/gunicorn.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-12-06 02:05:38 UTC; 18min ago Main PID: 12657 (gunicorn) Tasks: 4 (limit: 1154) Memory: 94.2M CGroup: /system.slice/gunicorn.service ├─12657 /home/ubuntu/django/bin/python /home/ubuntu/django/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/mybook/mybook.socket mybook.wsg> ├─12659 /home/ubuntu/django/bin/python /home/ubuntu/django/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/mybook/mybook.socket mybook.wsg> ├─12660 /home/ubuntu/django/bin/python /home/ubuntu/django/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/mybook/mybook.socket mybook.wsg> └─12661 /home/ubuntu/django/bin/python /home/ubuntu/django/bin/gunicorn --access-logfile - --workers 3 --bind unix:/home/ubuntu/mybook/mybook.socket mybook.wsg> Dec 06 02:05:38 ip-172-31-47-184 systemd[1]: gunicorn.service: Succeeded. Dec 06 02:05:38 ip-172-31-47-184 systemd[1]: Stopped gunicorn daemon. Dec 06 02:05:38 ip-172-31-47-184 systemd[1]: Started gunicorn daemon. Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12657]: [2021-12-06 02:05:38 +0000] [12657] [INFO] Starting gunicorn 20.1.0 Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12657]: [2021-12-06 02:05:38 +0000] [12657] [INFO] Listening at: unix:/home/ubuntu/mybook/mybook.socket (12657) Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12657]: [2021-12-06 02:05:38 +0000] [12657] [INFO] Using worker: sync Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12659]: [2021-12-06 02:05:38 +0000] [12659] [INFO] Booting worker with pid: 12659 Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12660]: [2021-12-06 02:05:38 +0000] [12660] [INFO] Booting worker with pid: 12660 Dec 06 02:05:38 ip-172-31-47-184 gunicorn[12661]: [2021-12-06 02:05:38 +0000] [12661] [INFO] Booting worker with pid: 12661

と出ておりエラーは出ませんでした。

nginxについても/etc/nginx/sites-available/mybookに

server { listen 80; server_name パブリックIP; location = /favicon.ico {access_log off; log_not_found off;} location /static/ { root /home/ubuntu/mybook; } location / { include proxy_params; proxy_pass http://unix:/home/ubuntu/mybook/mybook.sock; } }

と記述しておりステータスチェックでは

● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-12-06 02:19:04 UTC; 21min ago Docs: man:nginx(8) Process: 13200 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Process: 13201 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 13202 (nginx) Tasks: 2 (limit: 1154) Memory: 2.4M CGroup: /system.slice/nginx.service ├─13202 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; └─13203 nginx: worker process

と出ておりエラーは出ていないように感じます。
参考サイト通りに他にもセキュリティグループにHTTP80番ポートのソース0.0.0.0/0を追加しております。

サーバー関係に初めて手を付けたためなかなか解決策が見つからず困っております。
よろしければ回答お願いします。

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

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

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

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

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

TaichiYanagiya

2021/12/06 05:13

nginx のエラーログを調べてみてください。
pre_pv

2021/12/07 13:43 編集

sudo cat /var/log/nginx/error.logでエラーログを見たところ 2021/12/07 12:51:45 [crit] 13203#13203: *306 connect() to unix:/home/ubuntu/mybook/mybook.sock failed (2: No such file or directory) while connecting to upstream, client: 10 6.75.184.237, server: **********, request: "GET / HTTP/1.0", upstream: "http://unix:/home/ubuntu/mybook/mybook.sock:/", host: "************" と出ましたがsockまで届いていないのでしょうか、一応色々なディレクトリを変えてみた結果gunicornとnginxのステータスチェックが通ったのですが...
TaichiYanagiya

2021/12/08 00:00

nginx からソケットファイルが見つからないようです。 gunicorn 起動後、/home/ubuntu/mybook/mybook.sock はできていますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問