Implementación de la aplicación Flask en Ubuntu (Apache+WSGI)

Implementación de la aplicación Flask en Ubuntu (Apache+WSGI)

Flask es un marco web de Python popular y liviano que permite a los desarrolladores crear aplicaciones web con facilidad. Uno de los aspectos clave de la implementación de una aplicación Flask es elegir el servidor web y la interfaz de puerta de enlace correctas. En este artículo, discutiremos cómo implementar una aplicación Flask utilizando Apache y WSGI (interfaz de puerta de enlace del servidor web) en un sistema basado en Linux. Apache es un servidor web poderoso y ampliamente utilizado, mientras que WSGI es una interfaz estándar entre los servidores web y las aplicaciones de Python.

Esta guía completa lo guiará a través de todo el proceso de implementación de una aplicación Flask con Apache y WSGI en una máquina Linux. Al final de este tutorial, tendrá una aplicación de frasco funcional que se ejecuta en un servidor web Apache con WSGI como interfaz.

Requisitos previos

Para implementar una aplicación Flask en Ubuntu, deberá instalar los siguientes requisitos previos:

  • Python 3: Flask es un marco web de Python, por lo que deberá tener instalado Python en su servidor.
  • Matraz: Deberá instalar frasco usando PIP, el Python Package Manager.
  • Apache2: Apache es un servidor web popular que se puede usar para alojar aplicaciones de frasco.
  • mod_wsgi: Este módulo Apache se utiliza para interactuar con aplicaciones web compatibles con WSGI como Flask.

Paso 1: Instalación de paquetes de comienzo

Comencemos con la instalación de paquetes requeridos en su sistema utilizando los siguientes pasos:

  1. Actualice la lista de paquetes y actualice cualquier paquete obsoleto:
    actualización de sudo apt-get  actualización de sudo apt-get  
  2. Instale Python 3 y Pip:
    sudo apt-get install python3 python3-pip python3-hvenv  
  3. Instale apache2 y mod_wsgi:
    sudo apt-get install apache2 libapache2-mod-wsgi-py3 

Paso 2: Configure su aplicación Flask

Cree un directorio para su aplicación y copie todos los archivos. Luego cree un entorno virtual para aislar su aplicación Flask e instalar los paquetes requeridos.

  1. Cree un directorio para su aplicación Flask:
    mkdir/var/www/frask-app  CD/VAR/www/frask-app  
  2. Copie todos los archivos de la aplicación Flask al directorio que acaba de crear
  3. Cree el entorno virtual para su aplicación y la activa:
    python3 -m venv venv  fuente venv/bin/activar  
  4. Instale las bibliotecas requeridas en el entorno virtual:
    Frasco de instalación de PIP  
  5. Crear un nuevo archivo de python llamado aplicación.py en el frasco directorio y agregue el siguiente código: desde frask import frask app = frask (__ name__) @App.ruta ('/') def hello (): return 'Hola, mundo!'
    123456de frask import fraskapp = frask (__ name__) @App.ruta ('/') def hello (): return 'Hola, mundo!'

    Esto crea una aplicación de frasco simple que devuelve "Hola Mundo!" Cuando accede a la URL de la raíz.

Paso 3: Prueba la aplicación Flask

Para probar la aplicación Flask, ejecute el siguiente comando en el terminal:

 exportar frask_app = aplicación.py   frasco  

Esto debería iniciar el servidor de desarrollo de frascos. Abra su navegador web y vaya a http: // localhost: 5000. Debería ver "Hola Mundo!" Mostrado en su navegador.

Paso 4: Crear archivo de configuración de WSGI

  1. Cree un punto de entrada WSGI para su aplicación Flask:
    nano/var/www/fraskapp/fraskapp.WSGI  
  2. Pegue el siguiente código en el archivo, reemplazando "Flaskapp" con el nombre de su aplicación: Importar SYS Importar Sys de registro.camino.insertar (0, '/var/www/fraskapp') sys.camino.insertar (0, '/var/www/fraskapp/venv/lib/python3.10/Sitio-Packages/') # Configurar registro de registro.BasicConfig (stream = sys.stderr, nivel = registro.Depurar) # importar y ejecutar la aplicación Flask desde la aplicación de importación de la aplicación como aplicación
    1234567891011Importar Sysimport Rogging Sys.camino.insertar (0, '/var/www/fraskapp') sys.camino.insertar (0, '/var/www/fraskapp/venv/lib/python3.10/Sitio-Packages/') # Configurar LoggingLogging.BasicConfig (stream = sys.stderr, nivel = registro.Depurar) # importar y ejecutar la aplicación de importación de la aplicación Flask AppFrom como aplicación

  3. Guarde el archivo y cierre.

Paso 5: Configuración de Apache

  1. Cree un archivo de configuración de Apache para su aplicación:
    sudo nano/etc/apache2/sites disponible/frascapp.ejemplo.comunicarse.confusión  
  2. Pegue el siguiente código en el archivo, reemplazando "Flaskapp" Con el nombre de su aplicación y las rutas con las rutas correctas para su configuración: ServerName FlaskApp.ejemplo.com serveradmin webmaster@localhost documentroot/var/www/flaskapp wsgidaemonprocess flaskapp hilts = 5 wsgiscriptalias//var/www/fraskapp/flaskapp.wsgi wsgiapplicationgroup %global wsgiprocessgroup flaskapp wsgiapplicationgroup %global ordenar, permitir que permita todos los errores de error $ apache_log_dir/fraskapp-error.Log CustomLog $ apache_log_dir/fraskapp-access.registro combinado
    123456789101112131415161718 Servername flaskapp.ejemplo.com serveradmin webmaster@localhost documentroot/var/www/flaskapp wsgidaemonprocess flaskapp hilts = 5 wsgiscriptalias//var/www/fraskapp/flaskapp.wsgi wsgiapplicationgroup %global Wsgiprocessgroup flaskapp wsgiapplicationgroup %global Order Deney, Permitir de todos ErrorLog $ apache_log_dir/fraskapp-error.Log CustomLog $ apache_log_dir/fraskapp-access.registro combinado

  3. Habilite la nueva configuración de Apache:
    sudo a2ensite flaskapp.ejemplo.comunicarse  
  4. Reinicie Apache para aplicar los cambios:
    SUDO SERVICIO APACHE2 Reiniciar  

Su aplicación de frasco ahora debe estar en funcionamiento en su servidor Ubuntu. Puede acceder a él visitando la URL de su servidor en un navegador web.

Paso 6: Pruebe la aplicación Flask con Apache

Para probar la aplicación Flask con Apache, abra su navegador web y vaya a http: // fraskapp.ejemplo.comunicarse (Reemplace FlaskApp.ejemplo.com con tu nombre de dominio). Deberías ver "Hola, mundo!"Se muestra en su navegador.

Felicidades! Ha implementado con éxito una aplicación Flask con Apache y WSGI en Linux.

Conclusión

La implementación de aplicaciones frascos con Apache y WSGI en Linux puede ser un desafío, pero es un paso crucial para que su aplicación esté disponible en Internet. Esta guía integral le ha mostrado cómo implementar una aplicación Flask con Apache y WSGI en Linux, desde la creación de una aplicación Flask para configurar Apache y crear un script WSGI.

Recuerde probar siempre su aplicación después de la implementación y asegúrese de que se esté ejecutando sin problemas. Con este conocimiento, ahora puede implementar sus aplicaciones frascos con confianza y llevar sus habilidades de desarrollo web al siguiente nivel.