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

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

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

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

2回答

2264閲覧

Flask htmlファイルを読み込んで外部公開したい。

Tohmas_1010

総合スコア15

Flask

FlaskはPython用のマイクロフレームワークであり、Werkzeug・Jinja 2・good intentionsをベースにしています。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2020/04/29 11:47

編集2020/04/29 13:53

起動すると「このサイトにアクセスできませんhttp://0.0.0.0:8080/ のウェブページは一時的に停止しているか、新しいウェブアドレスに移動した可能性があります。
ERR_ADDRESS_INVALID」とブラウザに表示されます。

localhost:8080で起動した場合はjinja2.exceptions.TemplateNotFoundとブラウザに表示されます。

[環境]
Windows10 / Vscode / anaconda

どなたかご教授願います。。

python

1#port-8080 2 3from flask import Flask 4from flask import jsonify 5from flask import render_template 6 7 8 9app = Flask(__name__, template_folder='./templates') 10 11@app.route('/') 12def index(): 13 return render_template('./index.html') 14 15if __name__ == '__main__': 16 from argparse import ArgumentParser 17 parser = ArgumentParser() 18 parser.add_argument('-p', '--port', default=8080, 19 type=int, help='port to listen on') 20 21 parser.add_argument('-g', '--gw', default='http://127.0.0.1:5000', 22 type=str, help='blockchain gateway') 23 24 args = parser.parse_args() 25 port = args.port 26 app.config['gw'] = args.gw 27 28 app.run(host='0.0.0.0', port=port, threaded=True, debug=True) 29

イメージ説明

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

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

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

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

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

yuicho

2020/04/29 12:07

> 起動すると「このサイトにアクセスできませんhttp://0.0.0.0:8080/ のウェブページは一時的に停止しているか、新しいウェブアドレスに移動した可能性があります。 ERR_ADDRESS_INVALID」と表示されます。 もしブラウザでなければどこに表示されるか追記してください。 > localhost:8080で起動した場合はjinja2.exceptions.TemplateNotFoundと表示されます。 テンプレートファイル含めどんなディレクトリ構成か教えてください
Tohmas_1010

2020/04/29 13:15

ブラウザに表示されます。 ディレクトリ構成を追加しました。
yuicho

2020/04/29 13:31

アクセスする時はflaskが動いているサーバーのIP(もしくはドメイン)でアクセスする必要があります。 どのような環境でflask動かしてるか教えていただけますか?
Tohmas_1010

2020/04/30 00:00

環境の説明を追加しました。
guest

回答2

0

[環境]

Windows10 / Vscode / anaconda

見てる環境と同じ環境でflaskを動かしておられるということであれば、localhost:8080127.0.0.1:8080 で良いと思います。

投稿2020/04/29 13:57

yuicho

総合スコア142

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

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

0

ベストアンサー

起動すると「このサイトにアクセスできませんhttp://0.0.0.0:8080/ のウェブページは一時的に停止しているか、新しいウェブアドレスに移動した可能性があります。

ERR_ADDRESS_INVALID」と表示されます。

どこに表示されているか分からないので推測ですが、ブラウザに 0.0.0.0:8080 へアクセスしていませんか?
それは全てのIPで待ち受けるという意味でFlask側だけで使える表記で、ブラウザからそれでアクセスすることはできません。

localhost:8080で起動した場合はjinja2.exceptions.TemplateNotFoundと表示されます。

出てるとおり、 TemplateNotFound です。
./index.html が見つかってないです。

投稿2020/04/29 12:02

yuicho

総合スコア142

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

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

Tohmas_1010

2020/04/29 13:23

templatesディレクトリ内にhtmlを読み込むファイルを置いてしまっていました。 TemplateNotFound解決しましたm(__)m
yuicho

2020/04/29 13:29

`wallet_server.py` がそうだったんですね…
Tohmas_1010

2020/04/29 13:47

でした...。 環境の説明を追加しました。
Tohmas_1010

2020/04/30 00:06

0.0.0.0で待ち受けている訳ではないとの事なのでlocal hostでアクセスすることにします。
yuicho

2020/04/30 01:22

`0.0.0.0` について上手く説明する方法を考えていたら、わかりやすいQiitaの投稿があったので共有しておきます https://qiita.com/amuyikam/items/0063df223aed40193ba9 > Webサーバでよく見る0.0.0.0はこのホストのすべてのインターフェースでLISTENするという意味 > 宛先0.0.0.0は無効なアドレスなので、何も考えずにブラウザに0.0.0.0:8000のように入れるのは誤り > ただしOSによっては0.0.0.0を127.0.0.1にルーティングしていることがあるため表面上は問題ないように見える(CORSには引っかかるので混同していると痛い目見るかも)
Tohmas_1010

2020/04/30 10:32

わざわざありがとうございます。 ローカルマシン上の全てのIPv4アドレスから到達できるのが'0.0.0.0'。というのは分かりましたが、自分の場合はなぜアクセスすらできないのでしょうか?
yuicho

2020/04/30 11:23

「アクセスすらできない」っていうのが 0.0.0.0 でという意味であれば、Qiitaの投稿にもあるように、 > ここで注目したいのが、Destination = False です。つまり、0.0.0.0/8のアドレスは宛先として使用しないアドレス帯(無効な宛先アドレス)として定義されているということです。 なので、宛先アドレスとしては使用できないためです。 あくまでどのアドレスで待ち受けるか、という点で「このネットワーク上のこのホスト」という意味になります。
Tohmas_1010

2020/05/01 00:15

おかげさまで6割ほどは理解ができましたm(__)m 今後ネットワークについてもっと学習していきたいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問