私はFlaskアプリケーション(Python 2.7を使用して)を作成しようとしています。私はそのアプリケーションを起動して稼働させることができました。そして、それは、アプリケーションが実行されているコンピュータのWi-Fiネットワーク上のすべてで正常に動作します。私は私の内部IPアドレスとポート8000を使用してそれにアクセスしています。私はWi-Fiに接続されている私の電話から接続するたびに動作します。しかし、私が携帯電話のデータに切り替えてそこから接続すると、うまく動作せず、代わりに「応答に時間がかかりすぎました」と表示されます。次のようにアプリ自体のコードは次のとおりです。他のネットワークからFlaskアプリにアクセスするには?
from flask import Flask, render_template
from GradeScraper import scrapeforgrades
app = Flask(__name__)
@app.route('/')
def home():
scrapeforgrades()
return render_template("Grades.html")
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8000, debug=True)
GradeScraperアプリで呼び出される私が書かれているだけでウェブスクレーパー、です。そのファイルが私の問題の原因だとは思わない。
私は外部IPアドレスからアプリに接続しようとしましたが、「接続を拒否しました」と表示されています。私はthis StackOverflowページに行きました。その答えはセキュリティ設定について何か言いました。私はそれらを変える方法を全く理解していませんでした。この質問をした人は、「セキュリティ設定で遊んで、ついにそれを稼働させた」とコメントし、私は同じことをすべきだという結論に至りました。残念ながら、私はそれをどうやって行うのか分かりません。誰かが正しい方向に私を指すことができますか?必要なすべての追加情報を提供します。
おかげで、
ミー
ルーターでポートフォワードしましたか?あなたが見つけた投稿は、あなたの事件に関連していない、アマゾンのウェブサービスに関するものです。ポート転送なしでは、パブリックインターネットは内部ローカルエリアネットワークコンピュータのポートにアクセスできません。 –
@ThuYeinTunによれば、ポート転送なしでは、ネットワークの外部からマシンにアクセスする方法はありません。 Wi-Fiルーターで弱い設定にする必要があります。間違いなくハードウェアの質問ではなく、関連するコーディング。 – dda
ああ、私はほとんど忘れてしまった:あなたが何をしても、**セキュリティの脆弱性であるNAT **を設定するときに 'debug = True'のままにしておかないで、攻撃者が任意のPythonコードをあなたのプロセス内で。 – Marco