Dans l’écosystème du développement web, l’intégration de Python avec le serveur web Apache via mod_wsgi est une approche puissante pour déployer des applications web Python de manière efficace et sécurisée. Cet article vise à fournir un guide détaillé pour configurer Apache et mod_wsgi sur un système Ubuntu 22.04, permettant ainsi aux développeurs de toutes compétences de tirer le meilleur parti de leurs scripts Python.
Prérequis
Avant de commencer, assurez-vous que votre système Ubuntu 22.04 est à jour en exécutant les commandes suivantes dans le terminal :
sudo apt update && sudo apt upgrade -y
Étape 1: Installation d’Apache et mod_wsgi
Apache est un serveur web largement utilisé, tandis que mod_wsgi est un module Apache qui permet d’exécuter des applications web Python en communiquant via le Web Server Gateway Interface (WSGI). Installez Apache et mod_wsgi avec la commande suivante :
sudo apt install apache2 libapache2-mod-wsgi-py3 -y
Une fois l’installation terminée, Apache devrait démarrer automatiquement. Vous pouvez vérifier son statut avec :
sudo systemctl status apache2
Étape 2: Création de votre application Python
Créez un répertoire pour votre application Python dans /var/www/
et naviguez dedans. Par exemple, pour une application nommée “monapp” :
sudo mkdir /var/www/monapp
cd /var/www/monapp
Dans ce répertoire, créez un fichier app.wsgi
et un répertoire pour votre application. Le fichier app.wsgi
servira de point d’entrée pour votre application Python :
sudo nano app.wsgi
Dans app.wsgi
, ajoutez le code suivant pour démarrer une application Flask simple (assurez-vous d’avoir Flask installé) :
import sys
sys.path.insert(0, '/var/www/monapp')
from monapp import app as application
Remplacez "monapp"
par le nom de votre module Python contenant votre application Flask.
Étape 3: Configuration d’Apache pour votre application
Créez un fichier de configuration pour votre site dans /etc/apache2/sites-available/
. Le fichier doit se terminer par .conf
:
sudo nano /etc/apache2/sites-available/monapp.conf
Ajoutez la configuration suivante, en ajustant les chemins et les noms selon votre application :
<VirtualHost *:80>
ServerName monapp.com
WSGIDaemonProcess monapp python-path=/var/www/monapp
WSGIScriptAlias / /var/www/monapp/app.wsgi
<Directory /var/www/monapp>
WSGIProcessGroup monapp
WSGIApplicationGroup %{GLOBAL}
Require all granted
</Directory>
</VirtualHost>
Activez votre site et redémarrez Apache pour appliquer les changements :
sudo a2ensite monapp.conf
sudo systemctl restart apache2
Étape 4: Test de votre application
À ce stade, votre application devrait être accessible via le navigateur en utilisant l’adresse IP de votre serveur ou le domaine configuré (si vous avez configuré un nom de domaine pour pointer vers votre serveur).
Pour ceux qui cherchent une solution d’hébergement robuste et fiable pour leurs applications web Python, Shape.host propose des services de Linux SSD VPS. Les VPS SSD Linux de Shape.host offrent des performances optimales, garantissant que vos applications tournent en douceur et efficacement. Avec une configuration facile, une sécurité renforcée et une assistance 24/7, les VPS de Shape.host sont la solution idéale pour héberger vos applications Python avec Apache et mod_wsgi sur Ubuntu 22.04.