質問: こちらのサイトを参考にPythonでAPIの実装をしました。 このサイトの通りAPI.pyを作り、ローカルで`host='0.0.0.0'`ならうまく動きました。 これを発展してラボマシンにサーバーを立てたいと思ったのですが、うまく繋がりません。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/657d2a71b6d871abc8e2a504921c5248.png) ポートはちゃんと解放されているのになぜコネクトできないのでしょうか...。 ちなみにポートは今こんな感じです。![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/ae719460287c8245ee075b5b88c44c5b.png) オンラインでできるポートチェックテストをやってみたら80や22はアクセスできるのに2112はアクセスできませんでした...。ちゃんと開放できていないのでしょうか?
回答: ApacheやNginx等のHTTPServerが無いと外から見えないです。 代表的な組み合わせとして、Nginx + Gunicorn + Flaskというものがあります。 以下のサイトの一番上の画像を参照ください。 画像だけ参照してほしいサイト 80が見えると書いてありますので、なんらかのHTTPServerが動作しているんだと思います。 そこに、2112へのリバースプロキシを構築し、gunicornで動作させたflaskにつなぐようにするとアクセス可能と思います。 Nginx + Gunicorn + Flaskの組み合わせでは、以下のサイトで構築方法を解説していらっしゃるかたがいましたので参考にしてください。 gunicorn + Flask + nginx + Systemdで動かしてみた Apache + mod_wsgiの場合は、以下のサイトが参考になりそうです。 PythonのFlaskを初めて触ってから30分で本番環境にデプロイ+ HTTPS通信まで完成