Подтвердить что ты не робот

Flask - Как сделать приложение внешне видимым через маршрутизатор?

Короче говоря

Как вы запускаете простой веб-сайт на основе Flask, видимый в Интернете, с главного ПК, который осуществляет доступ к интернету с беспроводного маршрутизатора?

Детали вопроса

Я хотел бы сделать приложение фляги видимым для Интернета, как Руководство по быстрому запуску.

Если я запускаю простое приложение Flask ниже, оно становится доступным с компьютера в той же сети, что и компьютер хоста, но не с устройства, подключенного через Интернет через другую сеть.

Проблема аналогична обсуждаемой здесь и здесь, с добавленный элемент, который работает на домашнем ПК, кажется, предполагает, что внешние соединения указывают на порт xx маршрутизатора, а не на порт xx компьютера-хоста, как это предлагается в комментариях в это сообщение.

Что я сделал

Ссылаясь на приведенный ниже код, вот что я сделал:

  • Проверено мое IP-адрес на панели управления
  • отключена вся защита сети в антивирусе
  • запустите `ipconfig/all ', находясь на компьютере с Windows
  • наконец-то открыл браузер на устройстве, подключенном к другой сети, и указал его на соответствующий IP: порт адрес

В результате "Веб-страница недоступна".

Кто-нибудь сталкивался с той же проблемой? Это проблема маршрутизатора?

Ссылка на флэшку

from flask import Flask
app = Flask(__name__)

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

if __name__ == '__main__':
    app.run(host= '0.0.0.0', port=9000, debug=False)
4b9b3361

Ответ 1

Основной настройкой будет создание правила, которое отправит запрос на порт 80 и/или порт 443 на назначенный хост в вашей локальной сети.

Пример создания NAT (преобразования адресов) и правила переадресации портов для пересылки входящих HTTP/S-запросов на ваш локальный сетевой сервер с вашим приложением python.

Например:

app.run(host= '192.168.0.58', port=9000, debug=False)

Ваше правило NAT должно указывать на 192.168.0.58 на порт 9000.