現状
個人利用程度ですが,Flaskを使ったweb applicationの開発をしています。
先日,アップデートを行って,ローカルで成功したのでHerokuにデプロイしました。そこまではいいものの,heroku openしたときに,次のようなエラーが発生し,アプリがクラッシュしてしまいました。
発生している問題・エラーメッセージ
2020-09-03T00:57:56.251097+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=XXXX.herokuapp.com request_id=ReqID1 fwd="FWD" dyno= connect= service= status=503 bytes= protocol=https 2020-09-03T00:57:56.809188+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=XXXX.com request_id=ReqID2 fwd="FWD" dyno= connect= service= status=503 bytes= protocol=https
*初心者でよくわからないのですが個人情報もあるかもしれないので念のため,アプリ名をXXXXで, ID, fwdあたりの番号は単語に置き換えて貼っておきます。
アップデートするときに行ったこと
- 今までrouteは"/"だけだったが,"/hoge"のrouteも追加した。->ローカルでは動いているので問題ない気がする
- bootstrapでカスタマイズCSSを作って追加した。-> 該当のhtmlファイルに追記済。
- 特に新たなパッケージをpip installしたわけじゃないので,requirements.txtには問題ない気がするが,念のために pip freeze > requirements.txtは実行済
補足情報
requirements.txt
certifi==2020.6.20 click==7.1.2 Flask==1.1.2 gunicorn==20.0.4 itsdangerous==1.1.0 Janome==0.3.10 Jinja2==2.11.2 MarkupSafe==1.1.1 Werkzeug==1.0.1 wincertstore==0.2
Procfile
web: gunicorn app:app --log-file -
app.py(メインファイル/一部処理省略)
python
1import sys 2import os 3import re 4from flask import * 5from janome.tokenizer import Tokenizer 6 7 8app=Flask(__name__) 9 10class process(): 11 def analy(): 12 #処理省略 13 return outputs 14 15@app.route("/", methods=["GET", "POST"]) 16def getInput(): 17 if request.method=="GET": 18 return render_template('index.html', title="タイトル") 19 else: 20 original=request.form['inputs'] 21 translated=process.analy() 22 try: 23 return render_template('index.html', title="タイトル", original=original, translated=translated) 24 except: 25 return render_template('index.html', title="タイトル", original=original) 26 27@app.route("/hoge", methods=["GET", "POST"]) #今回追加した部分 28def getURL(): 29 if request.method=="GET": 30 return render_template('hoge.html', title="タイトル") 31 else: 32 pageURL=request.form['pageURL'] #ユーザーのインプット 33 return render_template('hoge.html', title="タイトル", URLtoOpen=pageURL) 34 35if __name__=="__main__": 36 app.run(host="0.0.0.0", port=int(os.environ.get("PORT", 5000)), debug=True)
ファイルの配置
/dic (プログラムの処理に必要なものが入ってる)
-必要なファイル(.txt, .csv)
/static (bootstrap用)
-/css
-bootstrapのcssファイルと,カスタマイズcsvファイル
-/js
-bootstrapのjsファイル
/templates (bootstrap用)
-index.html
-layout.html
-hoge.html
app.py
Procfile
requirements.txt
もしよろしければ,解決方法になりそうなヒントがあればご教授よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/03 02:19