部署到生产环境

在开发应用程序后,您会希望将其公开给其他用户。在本地开发时,您可能正在使用内置开发服务器、调试器和重新加载器。这些不应在生产环境中使用。相反,您应使用专用的 WSGI 服务器或托管平台,其中一些将在本文中进行描述。

“生产环境”表示“非开发环境”,无论您是向数百万用户公开您的应用程序,还是私下/本地向单个用户公开您的应用程序,此定义都适用。在部署到生产环境时,请勿使用开发服务器。它仅供本地开发使用。它并非设计为特别安全、稳定或高效。

自托管选项

Flask 是 WSGI 应用程序。WSGI 服务器用于运行应用程序,将传入的 HTTP 请求转换为标准 WSGI 环境,并将传出的 WSGI 响应转换为 HTTP 响应。

这些文档的主要目标是让您熟悉使用生产 WSGI 服务器和 HTTP 服务器运行 WSGI 应用程序所涉及的概念。有许多 WSGI 服务器和 HTTP 服务器,具有多种配置可能性。以下页面讨论了最常见的服务器,并展示了运行每个服务器的基础知识。下一部分讨论了可以为您管理此项工作的平台。

WSGI 服务器内置了 HTTP 服务器。但是,专用 HTTP 服务器可能更安全、更高效或更强大。将 HTTP 服务器置于 WSGI 服务器之前称为“反向代理”。

此列表并非详尽无遗,您应根据应用程序的需要评估这些和其他服务器。不同的服务器将具有不同的功能、配置和支持。

托管平台

有许多服务可用于托管 Web 应用程序,而无需维护您自己的服务器、网络、域等。某些服务可能在特定时间或带宽范围内提供免费套餐。其中许多服务使用上述 WSGI 服务器之一或类似的界面。以下链接指向一些最常见的平台,这些平台包含有关 Flask、WSGI 或 Python 的说明。

此列表并非详尽无遗,您应根据应用程序的需求评估这些和其他服务。不同的服务将具有不同的功能、配置、定价和支持。

在使用大多数托管平台时,您可能需要告知 Flask 它位于代理后面