
Ubuntu VM 上でシンプルな Flask サーバーを実行しようとしています。
を使用すると ssh で接続できます[email protected]
が、実行すると、curl 123.456.789:8000
サーバーがリッスンしているにもかかわらず、操作がタイムアウトになります。
* Serving Flask app "app.py"
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:8000/ (Press CTRL+C to quit)
出力iptables -vnL
は次のようになります:
Chain INPUT (policy ACCEPT 11434 packets, 8571K bytes)
pkts bytes target prot opt in out source destination
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8000
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 7590 packets, 4856K bytes)
pkts bytes target prot opt in out source destination
したがって、ポート 8000 は問題なく使用できるはずです。次の図でlsof
も確認できます。
flask 16268 robin 3u IPv4 167958 0t0 TCP 127.0.0.1:8000 (LISTEN)
実際にそんなことをしたことがないので、愚かな間違いかもしれませんが、他に何か間違っている点が思い当たりますか?
答え1
python/flask アプリは 127.0.0.1 でリッスンしているため、localhost へのアクセスが制限されます。
必要に応じて、特定の IP または 0.0.0.0 でリッスンするようにします。