次のコードを使用してウェブサーバーを実行できます
from flask import Flask
from waitress import serve
app = Flask(__name__, static_url_path='/static')
...
serve(app, port=8080)
問題は、実行しているマシンからのみアクセスできることです。ipv4ipを使用してアクセスしようとすると、機能しません。ステップがありませんか?
簡単な例、試してみてください!
お役に立てば幸いです。
app1.py
from flask import Flask
app = Flask(__name__)
# app.run(Host='0.0.0.0', port=8080,debug=True)
waitress_server.py
from waitress import serve
import app1
serve(app1.app, Host='0.0.0.0', port=8080)
次に、以下のコマンドを実行します
python waitress_server.py
使用してみてください
serve(app, Host='0.0.0.0', port=8080)
Waitress
は、Flaskアプリケーションを実行するためのwaitress-serve
という簡単なコマンドラインユーティリティを提供します。この回答はWaitress 1.30。コマンドライン引数は将来変更される可能性があります。
Flaskアプリケーションが呼び出された場合myapplicationとアプリケーションをインスタンス化するメソッドが呼び出された場合create_app、次を使用できます:-
waitress-serve --call "myapplication:create_app"
このコマンドは、デフォルトでポート8080でリッスンしているサーバーを起動します。
ポート80(http)で起動する場合、必要なことは次のとおりです。
waitress-serve --port=80 --call "myapplication:create_app"
ウェイトレスは コマンドライン引数 を提供します。
Flask 1.0 production 展開チュートリアル 。
同じネットワーク内のコンピューターからは到達できるが、ネットワーク外のコンピューターからは到達できないことに気付いた
ルーターでポートを転送し、パブリックIPアドレスを使用する必要があります。