LINUX

Come eseguire applicazioni Python su Apache con il modulo mod_wsgi

Mod_wsgi è un modulo Apache HTTP Server di Graham Dumpleton che fornisce un’interfaccia conforme a WSGI per l’hosting di applicazioni Web basate su Python. È scritto in codici C. Quindi ha prestazioni migliori e meno sovraccarico di memoria rispetto a mod_python o altri.

Questo tutorial ti insegnerà come eseguire script Python su Apache con il modulo mod_wsgi su Ubuntu e Centos.

Passaggio 1) Installa Apache2, Python e mod_wsgi

Installiamo prima i pacchetti apache, python e mod_wsgi su Linux.

Su Ubuntu

L’ultima versione di Ubuntu viene fornita con python installato, se si desidera installare una versione specifica, eseguire il seguente comando.

$ sudo apt install python3.7 -y

Installa apache2 su Ubuntu 18.04

$ sudo apt install apache2 apache2-utils ssl-cert

Installa mod_wsgi usando il seguente comando:

$ sudo apt-get install libapache2-mod-wsgi

Su CentOS

Su CentOS, possiamo usare il comando yum per installare i pacchetti.

Installa Apache

$ sudo yum install httpd

Il seguente comando installerà Python 3.6 su CentOS.

$ sudo yum install rh-python36

Installa mod_wsgi

# yum install mod_wsgi

Passaggio 2) Configura Apache con mod_wsgi

Modifica il file “/etc/httpd/conf/httpd.conf” e aggiungi la riga seguente nella sezione “LoadModule”:

LoadModule wsgi_module modules/mod_wsgi.so

Dopo aver aggiornato il file di configurazione, riavviare il server web apache.

Potrebbe non essere necessario modificare il file “httpd.conf” se esiste /etc/httpd/conf.d/wsgi.conf.

Passaggio 3) Creare la directory di accesso Web e il file Python

Ad esempio, crea la directory “/usr/local/wsgi/scripts” e aggiungi il file “wsgi-myapp.py”.

Il contenuto del file è il seguente:

def application(environ,start_response):
status="200 OK"
output="Hello world"
response_headers=[('Content-type','text/plain'),
('Content-Length',str(len(output)))]
start_response(status,response_headers)
return [output]

passaggio 4) Crea il file di configurazione di Apache

Crea un file chiamato “myapp.conf” e mettilo nella directory “/etc/httpd/conf.d/”. I contenuti del file sono:

Alias /myapp “/usr/local/wsgi/scripts/wsgi-myapp.py”

Options ExecCGI
SetHandler wsgi-script
Order allow,deny
Allow from all

Passaggio 5) Controllare il risultato

Ora riavvia il servizio httpd. Quindi apri Firefox e inserisci l’indirizzo “localhost/myapp”, vedrai “Hello world” nella pagina web.

Imparentato: Come configurare l’ambiente virtuale Python su Ubuntu 18.04

Related Articles

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Back to top button
Close