Я тестировал свое приложение Flask локально, а затем развертывал его на экземпляре AWS EC2. Где определяется порт по умолчанию? Если я не укажу порт, он использует порт 5000 локально; при развертывании он использует порт 80. Он определен в коде Flask или является частью настроек веб-сервера?
Почему Flask использует порт 5000 локально и 80 при развертывании?
Ответы (1)
Сервер разработки Flask (Werkzeug) по умолчанию использует порт 5000 если порт не указан. Это связано с тем, что привязка к портам ниже 1024 требует повышенных разрешений.
Вы не используете (а если и используете, то не должны) использовать сервер разработки в производстве, вы используете настоящий сервер WSGI и сервер HTTP, например uWSGI и Nginx, или обработчик WSGI от Amazon. Веб-сервер, независимый от Flask, привязывается к порту 80.
person
davidism
schedule
23.03.2017
app = Flask(__name__) app.run(port=any_port_here)
- person Danila Ganchar   schedule 23.03.2017