English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
开发服务器上的 Flask 应用程序只能在设置了开发环境的计算机上访问。 这是一种默认行为,因为在调试模式下,用户可以在计算机上执行任意代码。
如果禁用了调试,则通过将主机名设置为:0.0.0.0,可以使网络上的用户可以使用本地计算机上的开发服务器。
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 app.run(host = '0.0.0.0')
这样,您的操作系统会侦听所有公共 IP,也就是说,所有请求都会被处理。
要从开发环境切换到完整的生产环境,应用程序需要部署在真正的 Web 服务器上。 根据您的具体情况,可以使用不同的选项来部署 Flask Web 应用程序。
对于小型应用程序,可以考虑将其部署在以下任何托管平台上,所有这些平台都提供针对小型应用程序的免费计划。
Heroku dotcloud webfaction
Flask 应用程序可以部署在这些云平台上。 另外,可以在 Google 云平台上部署 Flask 应用程序。 Localtunnel 服务允许您在本地主机上共享您的应用程序,而不会混淆 DNS 和防火墙设置。
如果您倾向于使用专用 Web 服务器来代替上述共享平台,则可以使用以下选项。
mod_wsgi 是一个 Apache 模块,它提供了一个用于在 Apache 服务器上托管基于 Python 的 Web 应用程序的 WSGI 兼容接口。
安装 mod_wsgi
要从 PyPi 直接安装正式版本,可以运行 -
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 pip install mod_wsgi
要验证安装是否成功,使用 start-server 命令运行 mod_wsgi-express 脚本 -
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 mod_wsgi-express 开始-server
它将在端口:8000启动 Apache/mod_wsgi. Luego, puede acceder a través de navegador -
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 http://localhost:8000/
Crear el archivo .wsgi
Debería haber un yourapplication.wsgi El archivo. Este archivo contiene el código mod_wsgi, que se ejecuta en el inicio para obtener el objeto de la aplicación. Para la mayoría de las aplicaciones, el siguiente archivo debería ser suficiente -
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 from yourapplication import app as application
Asegúrese de que suapplication y todas las bibliotecas que está utilizando estén en la ruta de carga de Python.
Configurar Apache
Necesita informar a mod_wsgi la ubicación de la aplicación. Consulte la siguiente configuración -
# Nombre de archivo : example.py # Derechos de autor : 2020 Por w3codebox # Autor por : es.oldtoolbag.com # Fecha : 2020-08-08 <VirtualHost *> ServerName example.com WSGIScriptAlias / C:\yourdir\yourapp.wsgi <Directory C:\yourdir> Orden denegar, permitir Permitir de todos </Directory> </VirtualHost>
Hay muchos servidores populares escritos en Python, que incluyen aplicaciones WSGI y proporcionan servicios HTTP.
Gunicorn Tornado Gevent Twisted Web