4

フラスコをインストールして、hello-world スクリプトを実行することができました。

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

簡単すぎて感動しました。次に、Web サーバーを外部から見えるようにしたいと考えました。host='0.0.0.0'お勧め通り、 run関数の引数に入れました。次に、自分の IP アドレスを (Google で) 見つけて、それを Web ブラウザーのアドレス行に入力しました (hello-world-script の実行中に)。

その結果、「ユーザー名とパスワードが要求されています」と、ユーザー名とパスワードを入力する必要があるダイアログ ボックスが表示されました。よくわかりませんが、ワイヤレスネットワークから来ていると思います。この動作を変更する方法はありますか?

4

2 に答える 2

7

アプリケーションをどのように実行しようとしていますか?フラスコを次のように実行すると、 flaskはホスト(デフォルトでは127.0.0.1)とポート(デフォルトでは5000app.run() )に独自のWSGIサーバーを作成します(ポート<1000の場合はアクセス許可が必要です)。nginx + WSGIなどを使用してflaskを実行する場合、サーバーはホストとポートを解決します。

これで、nginxやApacheなどのサーバーを解決したポートごとにアプリケーションを取得したいようです。デフォルトのポートを使用してフラスコアプリケーションを取得するhttp://your-server-host-or-ip:5000か、のようにポートを変更(明示的に設定)app.run('0.0.0.0', 8080)して取得してみてくださいhttp://your-server-host-or-ip:8080

ちなみに、ifconfigUnixライクなシステムやipconfig /allWindowsなどのコマンドラインツールを使用して、いつでもIPアドレスを取得できます。

于 2013-03-01T06:40:14.997 に答える