Python Apache · 3 min read · Nov 12, 2025
Incorporare Python In Apache2 Con mod_python (Debian/Ubuntu, Fedora/CentOS, Mandriva, OpenSUSE)
Incorporare Python In Apache2 Con mod_python (Debian/Ubuntu, Fedora/CentOS, Mandriva, OpenSUSE)
Versione 1.0
Autore: Falko Timme
Questo tutorial mostra come installare e utilizzare mod_python su varie distribuzioni (Debian/Ubuntu, Fedora/CentOS, Mandriva, OpenSUSE) con Apache2. mod_python è un modulo Apache che incorpora l’interprete Python all’interno del server. Ti consente di scrivere applicazioni web in Python che verranno eseguite molte volte più velocemente rispetto ai tradizionali CGI e avranno accesso a funzionalità avanzate come la possibilità di mantenere le connessioni al database e altri dati tra le richieste e l’accesso agli interni di Apache.
Non rilascio alcuna garanzia che questo funzionerà per te!
1 Nota Preliminare
Ho testato questo su sistemi con l’indirizzo IP 192.168.0.100 dove Apache2 è già installato.
2 Debian/Ubuntu
Per Debian/Ubuntu, si prega di fare riferimento a questo tutorial: Incorporare Python In Apache2 Con mod_python (Debian Etch).
Per gli Utenti di ISPConfig
In quel tutorial abilito mod_python nel vhost predefinito che non ha effetto su altri vhost, quindi se stai utilizzando ISPConfig (dalla versione 2.2.24 in poi) puoi utilizzare quella configurazione senza alcuna modifica e abilitare/disabilitare mod_python su base per sito web. ISPConfig utilizza il Publisher Handler - non supporta il PSP Handler.
3 Fedora 9/CentOS 5.2
3.1 Installazione di mod_python
Per installare mod_python, eseguiamo semplicemente:
yum install mod_python3.2 Configurazione di Apache
Ora dobbiamo configurare Apache in modo che possa gestire i file Python. Ci sono due modi per farlo. Il primo (e predefinito) è utilizzare il Publisher Handler. Ti consente di scrivere script Python puri con l’estensione .py che verranno interpretati da Apache. Il secondo modo è il PSP Handler. PSP sta per Python Server Pages. Ti consente di incorporare codice Python direttamente nel codice HTML, simile a PHP. I file PSP hanno l’estensione .psp.
3.2.1 Il Publisher Handler
Per abilitare il Publisher Handler, dobbiamo modificare la configurazione di mod_python che puoi trovare in /etc/httpd/conf.d/python.conf. Questo file contiene molti esempi - facciamo un backup di esso e creiamo di nuovo quel file da zero. Sto usando la root del documento predefinita di Fedora/CentOS /var/www/html qui nella direttiva
cp /etc/httpd/conf.d/python.conf /etc/httpd/conf.d/python.conf_orig
cat /dev/null > /etc/httpd/conf.d/python.conf
vi /etc/httpd/conf.d/python.conf| LoadModule python_module modules/mod_python.so |
Si prega di notare: se utilizzi ISPConfig (dalla versione 2.2.24 in poi) sul server, si prega di escludere la parte
Riavvia Apache successivamente:
/etc/init.d/httpd restartOra creiamo un piccolo script di test Python (ad es. /var/www/html/test.py) con codice Python puro in esso…
vi /var/www/html/test.py| def index(req): return "Test riuscito"; |
… e chiamalo in un browser (ad es. http://192.168.0.100/test.py). Se tutto va bene, dovrebbe visualizzare Test riuscito nel tuo browser.
3.2.2 Il PSP Handler
Per abilitare il PSP Handler, dobbiamo modificare la configurazione di mod_python che puoi trovare in /etc/httpd/conf.d/python.conf. Questo file contiene molti esempi - facciamo un backup di esso e creiamo di nuovo quel file da zero. Sto usando la root del documento predefinita di Fedora/CentOS /var/www/html qui nella direttiva
cp /etc/httpd/conf.d/python.conf /etc/httpd/conf.d/python.conf_orig
cat /dev/null > /etc/httpd/conf.d/python.conf
vi /etc/httpd/conf.d/python.conf| LoadModule python_module modules/mod_python.so |
Si prega di notare: se utilizzi ISPConfig (dalla versione 2.2.24 in poi) sul server, si prega di escludere la parte
Riavvia Apache successivamente:
/etc/init.d/httpd restartOra creiamo un piccolo script di test PSP (ad es. /var/www/html/test.psp) con codice HTML e Python in esso…
vi /var/www/html/test.psp| |<% req.write("Ciao!") %>
… e chiamalo in un browser (ad es. http://192.168.0.100/test.psp). Se tutto va bene, dovrebbe visualizzare Ciao! nel tuo browser.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.