![見出し画像](https://assets.st-note.com/production/uploads/images/112400253/rectangle_large_type_2_0721c431fd614f291f87f389f1fcce5b.png?width=1200)
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に対応しており、非同期処理を簡単に実装できます。
PythonのWSGIとは何ですか?
Web Server Gateway Interface (WSGI; ウィスキー) は、プログラミング言語Pythonにおいて、WebサーバとWebアプリケーション(あるいはWebアプリケーションフレームワーク)を接続するための、標準化されたインタフェース定義である。
この記事が気に入ったらサポートをしてみませんか?