Djangoの勉強としてWebアプリを作成しデプロイをしたところHerokuでApplicationエラーが発生し,Webページを開くことが出来ません.
なんとかこのApplication errorを解消し本番環境でアプリを動作させてみたいです.
local環境ではきちんと動作しています.
- Python3.7.9
- Django3.1.2
Herokuからはlogを確認するように指示され,heroku logs --tailでログを確認しました.
以下にログを記載します.
(申し訳ございません,文字数オーバーになりましたので,画像になっております.)
wsgi.pyのfrom dj-static import Clingが悪さをしているのか,認識されていないのかなと予測していますが,それに対してどう対処すればよいかもわかっていません.
###試したこと
- heroku restart app app_name
- wsgi.pyの確認
- インターネットの記事を参考にHerokuがdj-staticをみつけられていなのかも?というのがありましたので,
######wsgi.py
Python
1import os 2 3from dj_static import Cling 4from django.core.wsgi import get_wsgi_application 5 6os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 7 8application = Cling(get_wsgi_application())
を
Python
1import os 2 3#from dj_static import Cling 4from django.core.wsgi import get_wsgi_application 5from whitenoise.django import DjangoWhiteNoise 6 7os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 8 9#application = Cling(get_wsgi_application()) 10application = get_wsgi_application() 11application = DjangoWhiteNoise(application)
に変えてみましたがエラーは治りませんでした.
######requirements.txt
txt
1asgiref==3.2.10 2certifi==2020.6.20 3chardet==3.0.4 4dj-database-url==0.5.0 5dj-static==0.0.6 6Django==3.1.2 7gunicorn==20.1.0 8idna==2.10 9Pillow==5.4.1 10psycopg2-binary==2.8.6 11pytz==2020.1 12requests==2.25.1 13setuptools==49.2.0 14sqlparse==0.3.1 15static3==0.7.0 16urllib3==1.24.1 17whitenoise==5.2.0
Procfile
1web: gunicorn myproject.wsgi
######runtime.txt
txt
1python-3.7.9
: 追記
エラーが発生した際のcodeでは
python
1import os 2 3from dj-static import Cling 4from django.core.wsgi import get_wsgi_application 5 6os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 7 8application = Cling(get_wsgi_application())
と上記の三行目,from dj-static import Cling
として,github並びにHerokuへpushしていましたが,上記のcodeを修正した後,commit,pushをしておりませんでした.
現在のcodeでは下記のようになっております.
python
1import os 2 3from dj_static import Cling 4from django.core.wsgi import get_wsgi_application 5 6os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 7 8application = Cling(get_wsgi_application())
三行目の from dj-static import Clingをfrom dj_static import Clingと修正しています.
回答1件
あなたの回答
tips
プレビュー