GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come eseguire script Python con Apache e mod_wsgi su Ubuntu 20.04

mod_wsgi è un modulo Apache che fornisce un'interfaccia per l'hosting di applicazioni Web basate su Python sotto Apache. È adatto per l'uso nell'hosting di siti Web di produzione ad alte prestazioni, nonché per i siti personali autogestiti medi in esecuzione su servizi di hosting Web. Puoi facilmente distribuire applicazioni scritte con framework e strumenti come Django, Web.py, Werkzug, Chery.py, TurboGears e Flask usando mod_wsgi.

In questo tutorial impareremo come installare e configurare mod_wsgi con il server Apache sul server Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Una password di root è configurata sul server.

Per iniziare

Prima di iniziare, è una buona idea aggiornare il sistema con l'ultima versione. Puoi aggiornare il tuo sistema con il seguente comando:

apt-get update -y
apt-get upgrade -y

Dopo aver aggiornato il sistema, riavvialo per implementare le modifiche.

Installa Python

Per impostazione predefinita, Python viene preinstallato nel server Ubuntu 20.04. Se non è installato, puoi installarlo con il seguente comando:

apt-get install python3 libexpat1 -y

Una volta completata l'installazione, puoi procedere al passaggio successivo.

Installa Apache e mod_wsgi

Successivamente, dovrai installare il server Web Apache e il modulo Python mod_wsgi sul tuo sistema. Puoi installarli eseguendo il seguente comando:

apt-get install apache2 apache2-utils ssl-cert libapache2-mod-wsgi -y

Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.

Configura Apache per mod_wsgi

Successivamente, è necessario creare un nuovo script Python all'interno della directory principale Web predefinita di Apache e servirlo tramite il modulo mod_wsgi Apache.

Puoi crearlo con il seguente comando:

nano /var/www/html/wsgy.py

Aggiungi le seguenti righe:

def application(environ,start_response):
    status = '200 OK'
    html = 'html>\n' \
           '<body>\n' \
           '<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">\n' \
           'Welcome to mod_wsgi Test Page\n' \
           '</div>\n' \
           '</body>\n' \
           '</html>\n'
    response_header = [('Content-type','text/html')]
    start_response(status,response_header)
    return [html]

Salva e chiudi il file. Quindi, cambia la proprietà del file in www-data con il seguente comando:

chown www-data:www-data /var/www/html/wsgy.py

Quindi, crea un file di configurazione dell'host virtuale Apache per servire questo file tramite il protocollo HTTP.

nano /etc/apache2/conf-available/wsgi.conf

Aggiungi la seguente riga:

WSGIScriptAlias /wsgi /var/www/html/wsgy.py

Salva e chiudi il file. Quindi, abilita la configurazione mod-wsgi e riavvia il servizio Apache con il seguente comando:

a2enconf wsgi
systemctl restart apache2

Prova mod-wsgi

A questo punto, il server web Apache è configurato per servire il tuo file Python sul protocollo HTTP.

Per testarlo, apri il tuo browser web e digita l'URL http://your-server-ip/wsgi. Dovresti vedere la pagina di test di mod-wsgi nella schermata seguente:

Conclusione

Congratulazioni! hai distribuito con successo lo script Python sul server Web Apache utilizzando il modulo mod_wsgi sul server Ubuntu 20.04. Spero che ora tu possa distribuire facilmente qualsiasi applicazione Python con Apache e mod_wsgi nell'ambiente di produzione.


Ubuntu
  1. Come installare e configurare Nextcloud con Apache su Ubuntu 18.04

  2. Come installare e proteggere phpMyAdmin con Apache su Ubuntu 18.04

  3. Come compilare ed eseguire il programma C in Ubuntu

  4. Come installare Apache Maven su Ubuntu 18.04 e 16.04

  5. Come installare Python su Ubuntu 20.04 e 18.04?

Come velocizzare Apache con mod_pagespeed e Memcached su Ubuntu 15.10

Come installare Flask con Python 3 su Ubuntu 18.04

Come installare PrestaShop su Ubuntu 20.04 con Apache

Come installare Drupal con Apache su Debian e Ubuntu

Come installare Apache con Python Mod_wsgi su Debian 10

Come installare Django 3.2 su Ubuntu 20.04 con Apache e WSGI