Outils pour utilisateurs

Outils du site


linux:apache-wsgi

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
linux:apache-wsgi [2023/02/11 08:26] – [Install] rootlinux:apache-wsgi [2023/04/01 08:54] (Version actuelle) – [Install] root
Ligne 1: Ligne 1:
 ====== Apache2 & wsgi ====== ====== Apache2 & wsgi ======
 ===== Install ===== ===== Install =====
 +  - Installer les paquets: <code bash>apt update && apt dist-upgrade
 +apt install apache2 python3 python3-pip python3-venv</code>
 +  - Créer l'environnement: <code bash>
 +cd /opt && mkdir flask-app
 +cd flask-app
 +python3 -m venv flask-venv
 +source flask-venv/bin/activate
 +pip3 install flask
 +</code>
 +
 +  - Créer un fichier app.py <code bash>nano app.py</code> Avec le contenu: <file python app.py>
 +from flask import Flask
 +app = Flask(__name__)
 +
 +@app.route('/')
 +def index():
 +    return 'Hello World'
 +</file>
 +
 +  - Tester la base: <code bash>
 +export FLASK_APP=app.py
 +flask run --host=0.0.0.0</code>
 +  - Quitter l'envirronnement: <code bash>deactivate</code>
 +
 +  - Installer le module wsgi pour apache: <code bash>apt install libapache2-mod-wsgi-py3</code>
 +  - Créer un fichier flask-app: <code bash>nano /opt/flask-app/flask-app.wsgi</code> Contenu: <file python flask-app.wsgi>
 +import sys
 +sys.path.insert(0,'/opt/flask-app')
 +
 +from app import app as application
 +</file>
 +
 +  - Créer un fichier de configuration Python: <code bash>nano /etc/apache2/sites-available/flask.conf</code> Contenu: <file apache flask.conf>
 +<VirtualHost *:80>
 +ServerName yourdomain.com
 +DocumentRoot /opt/flask-app/
 +
 +WSGIDaemonProcess app user=www-data group=www-data threads=5 python-home=/opt/flask-app/flask-venv
 +WSGIScriptAlias / /opt/flask-app/flask-app.wsgi
 +
 +ErrorLog ${APACHE_LOG_DIR}/flask-error.log
 +CustomLog ${APACHE_LOG_DIR}/flask-access.log combined
 +
 +<Directory /opt/flask-app>
 +WSGIProcessGroup app
 +WSGIApplicationGroup %{GLOBAL}
 +Order deny,allow
 +Require all granted
 +</Directory>
 +</VirtualHost>
 +</file>
 +  - Activer le nouveau virtualhost et désactiver celui par défaut: <code bash>a2dissite 000-default.conf
 +a2ensite flask.conf
 +</code>
 +
  
-<code bash>apt-get install libapache2-mod-wsgi-py3 
-a2enmod wsgi</code> 
  
  
 ===== Sources ===== ===== Sources =====
   * https://www.bogotobogo.com/python/Flask/Python_Flask_HelloWorld_App_with_Apache_WSGI_Ubuntu14.php   * https://www.bogotobogo.com/python/Flask/Python_Flask_HelloWorld_App_with_Apache_WSGI_Ubuntu14.php
 +  * https://www.rosehosting.com/blog/how-to-install-flask-on-ubuntu-22-04-with-apache-and-wsgi/
  
linux/apache-wsgi.1676104019.txt.gz · Dernière modification : de root