Развёртывание в производство
После разработки приложения вы захотите сделать его доступным для других пользователей. При локальной разработке вы, вероятно, используете встроенный сервер разработки, отладчик и перезагрузчик. Эти инструменты не должны использоваться в производственной среде. Вместо этого вы должны использовать выделенный сервер WSGI или платформу хостинга, некоторые из которых будут описаны здесь.
«Производство» означает «не разработка», что относится как к тому случаю, когда вы предоставляете своё приложение миллионам пользователей в общедоступном доступе, так и к тому, когда вы предоставляете его локально одному пользователю. Не используйте сервер разработки при развертывании в производство. Он предназначен только для использования во время локальной разработки. Он не предназначен для особой безопасности, стабильности или эффективности.
Самохостинговые варианты
Flask — это WSGI-приложение. Для запуска приложения используется WSGI-сервер, преобразующий входящие HTTP-запросы в стандартный WSGI-средоописание, а исходящие WSGI-ответы — в HTTP-ответы.
Основная цель этих документов — ознакомить вас с концепциями, связанными с запуском WSGI-приложения с использованием производственного WSGI-сервера и HTTP-сервера. Существует множество WSGI-серверов и HTTP-серверов с множеством возможностей конфигурации. На следующих страницах рассматриваются наиболее распространённые серверы и показываются основы работы с каждым из них. В следующем разделе обсуждаются платформы, которые могут управлять этим за вас.
WSGI-серверы имеют встроенные HTTP-серверы. Однако выделенный HTTP-сервер может быть безопаснее, эффективнее или более функционален. Размещение HTTP-сервера перед WSGI-сервером называется «обратным прокси-сервером».
Этот список не является исчерпывающим, и вы должны оценить эти и другие серверы на основе потребностей вашего приложения. Разные серверы будут обладать разными возможностями, конфигурацией и поддержкой.
Платформы хостинга
Существует множество сервисов для хостинга веб-приложений без необходимости поддержки собственного сервера, сети, домена и т. д. Некоторые сервисы могут иметь бесплатный тариф до определённого времени или объёма трафика. Многие из этих сервисов используют один из описанных выше WSGI-серверов или аналогичный интерфейс. Ниже приведены ссылки на некоторые из наиболее распространённых платформ с инструкциями для Flask, WSGI или Python.
Этот список не является исчерпывающим, и вы должны оценить эти и другие сервисы на основе потребностей вашего приложения. Разные сервисы будут обладать разными возможностями, конфигурацией, ценообразованием и поддержкой.
Вероятно, вам потребуется указать Flask, что он находится за прокси-сервером при использовании большинства платформ хостинга.
© 2007–2022 Pallets
Licensed under the BSD 3-clause License.
https://flask.palletsprojects.com/en/2.3.x/deploying/