Outils pour utilisateurs

Outils du site


Panneau latéral

Plan du Site:

python:flask:setup_production

Setup Production (OLD)

Déploiement sur un serveur Apache

À lire : https://www.bogotobogo.com/python/Flask/Python_Flask_HelloWorld_App_with_Apache_WSGI_Ubuntu14.php

Sur un serveur Ubuntu 18.04 disposant déjà d'Apache 2.4.

Installer mod_wsgi

sudo apt install libapache2-mod-wsgi-py3

Installer python3-venv

sudo apt install python3-venv
  • Créer un dossier, par exemple /var/www/flaskapp/
  • Créer un environnement virtuel
  • Y installer Flask
sudo mkdir /var/www/flaskapp
cd /var/www/flaskapp
sudo python3 -m venv venv
source venv/bin/activate
sudo pip3 install Flask

Copier les fichiers de l'application.

/var/www/flaskapp
├── app.py
├── myapp.wsgi
├── static
│   ├── js
│   │   └── main.js
│   └── css
│       └── main.css
├── templates
│   ├── article.html
│   ├── base.html
│   └── home.html
└── venv
    └── ...

Contenu du fichier /var/www/flaskapp/myapp.wsgi :

/var/www/flaskapp/myapp.wsgi
#!/usr/bin/python
import sys
sys.path.insert(0, "/var/www/flaskapp/")
from app import app as application

Créer un fichier de configuration pour Apache :

monsite.conf
<VirtualHost *:80>
        ServerName monsite.com
        ServerAdmin admin@monsite.com
 
        WSGIDaemonProcess myapp user=www-data group=www-data threads=5
        WSGIProcessGroup myapp
        WSGIScriptAlias / /var/www/flaskapp/myapp.wsgi
 
        <Directory /var/www/flaskapp/static>
                AllowOverride all
                Require all granted
                Allow from all
        </Directory>
 
        ErrorLog ${APACHE_LOG_DIR}/monsite.com/error.log
        CustomLog ${APACHE_LOG_DIR}/monsite.com/access.log combined
</VirtualHost>

Le dossier /var/log/apache2/monsite.com pour les logs doit exister.

Activer le site et recharger Apache :

sudo a2ensite monsite.conf
sudo systemctl reload apache2
python/flask/setup_production.txt · Dernière modification: 2021/04/26 19:06 (modification externe)