見出し画像

Django '502 Bad Gateway nginx'

Google App EngineにDjangoプロジェクトをデプロイしてアクセスしましたら、上記のエラーが出てアプリが表示されない状態でした。

Google App Engineのダッシュボードでログを確認すると、

ModuleNotFoundError: No module named 'config' 

というエラーが吐かれていました。

configがいけないんやなと思い、ルートディレクトリにconfigというフォルダーを作成していたので確認すると、なんと'cofig'になってた。nが抜けてんねん。

app.yamlファイルには、

entrypoint: gunicorn -b :$PORT config.wsgi:application

と指定してるので、configなんてないよっていうエラーが出てました。

ということで、'cofig'フォルダーの名前を'config'に変えて、もう一度デプロイしたら、また同じく502のサーバーエラーが出ました なんでやねん😂


configの中のsettings.pyとasgi.pyとwsgi.pyの中の記述も'cofig'になってんねん
ついでにmanage.pyも’cofig’になっとる
それ直したらうまくいきました😃

ASGIとは
ASGIとはAsynchronous Server Gateway Interfaceの略です。WSGIの精神的な後継仕様であり、asyncioを介して非同期で動作するように設計されていて、またWebSocketなど複数のプロトコルをサポートしています。 Djangoの開発組織がASGIのドキュメントを管理しており、2020年8月現在、ASGIはまだPEP化はされてないようです。 DjangoやFastapiがASGIに対応しており、非同期処理を簡単に実装できます。

https://okiyasi.hatenablog.com/entry/2020/08/10/211804

PythonのWSGIとは何ですか?
Web Server Gateway Interface (WSGI; ウィスキー) は、プログラミング言語Pythonにおいて、WebサーバとWebアプリケーション(あるいはWebアプリケーションフレームワーク)を接続するための、標準化されたインタフェース定義である。

Google


この記事が気に入ったらサポートをしてみませんか?