Comment installer Apache avec Python MOD_WSGI sur Ubuntu 20.04

Comment installer Apache avec Python MOD_WSGI sur Ubuntu 20.04

L'interface de passerelle du serveur Web (WSGI en court) est une méthode simple pour les serveurs Web afin de transférer les demandes aux applications Web ou à des frameworks écrits en Python. Le WSGI est la spécification, qui décrit comment un serveur Web communique avec les applications Web.

Le mod_wsgi est un module Apache utilisé pour servir les scripts Python sur http. Ce tutoriel vous aide à installer le module Apache MOD_WSGI sur Ubuntu 20.04 Système.

Conditions préalables

Connectez-vous à votre Ubuntu 20.04 Console de serveur avec compte privilégié sudo.

Étape 1 - Installation de Python

Vous devez avoir installé la version Python requise sur votre système. Pour les systèmes Ubuntu, vous pouvez utiliser le gestionnaire de packages APT pour installer Python sur votre système.

sudo apt mise à jour sudo apt installer python3 libexpat1 

Étape 2 - Installez Apache avec module MOD_WSGI

Ensuite, vous devez installer le serveur Web Apache, y compris le package utilitaire Apache et le module MOD_WSGI Python sur votre système. Pour installer ces packages, exécutez les commandes suivantes.

sudo apt installer apache2 apache2-utils ssl-cert libapache2-mod-wsgi 

Après l'installation, redémarrez le service Apache pour recharger tous les modules.

sudo systemctl redémarrer apache2 

Étape 3 - Configuration de l'Apache pour WSGI

Maintenant, nous allons créer un exemple de script Python pour servir via le module MOD_WSGI Apache. Créez un script Python et modifiez votre éditeur de texte préféré:

Mkdir -p / var / www / scripts sudo nano / var / www / scripts / test_wsgi_script.py 

Ajouter le contenu suivant:

Def Application (Environ, start_Response): status = '200 ok' html = '\ n' \ '\ n' \ 'hooray, mod_wsgi travaille \ n' \ '\ n' \ '\ n' réponse_header = [(' Contenu-type ',' text / html ')] start_response (status, réponse_header) return [html]
12345678910Def Application (Environ, start_Response): status = '200 ok' html = '\ n' \ '\ n' \ 'hooray, mod_wsgi travaille \ n' \ '\ n' \ '\ n' réponse_header = [(' Contenu-type ',' text / html ')] start_response (status, réponse_header) return [html]

Enregistrez votre script Python et fermez le fichier.

Ensuite, configurez le serveur Apache pour servir ce fichier sur le protocole HTTP. Créons un fichier de configuration pour servir le wsgi_test_script.script py avec l'URL du répertoire.

sudo nano / etc / apache2 / conf-disponible / mod-wsgi.confli 

Ajouter le contenu suivant:

Wsgiscriptalias / test_wsgi / var / www / scripts / test_wsgi_script.py 

Après avoir terminé les étapes ci-dessus mod-wsgi Configuration et redémarrer le service Apache.

sudo a2enconf mod-wsgi sudo systemctl restart apache2 

Étape 4 - Configuration du test

Le script Python est prêt à servir sur Apache. Vous pouvez tester le script en accédant à l'URL suivante dans un navigateur Web. Assurez-vous de modifier Server_IP_OR_HOSTNAME avec le serveur réel IP ou nom de domaine pointé vers l'IP.

 http: // server_ip_or_hostname / test_wsgi 

Voir Capture d'écran ci-dessous:

Conclusion

Dans ce tutoriel, vous avez appris à déployer le script Python sur le serveur Web Apache à l'aide du module MOD_WSGI sur le système Ubuntu.