Python Apache · 2 min read · Nov 12, 2025
Incrustar Python En Apache2 Con mod_python (Debian Etch)
Incrustar Python En Apache2 Con mod_python (Debian Etch)
Versión 1.0
Autor: Falko Timme
Este tutorial muestra cómo instalar y usar mod_python en un servidor Debian Etch con Apache2. mod_python es un módulo de Apache que incrusta el intérprete de Python dentro del servidor. Te permite escribir aplicaciones web en Python que se ejecutarán muchas veces más rápido que el CGI tradicional y tendrán acceso a características avanzadas como la capacidad de mantener conexiones a bases de datos y otros datos entre solicitudes y acceso a los internos de Apache.
¡No emito ninguna garantía de que esto funcione para ti!
1 Nota Preliminar
He probado esto en un servidor Debian Etch con la dirección IP 192.168.0.100 donde Apache2 ya está instalado.
Estoy usando un host virtual con la raíz del documento /var/www en este ejemplo.
2 Instalando mod_python
Para instalar mod_python, simplemente ejecutamos:
apt-get install libapache2-mod-python3 Configurando Apache
Ahora debemos configurar Apache para que pueda manejar archivos Python. Hay dos formas de hacerlo. La primera (y predeterminada) es usar el Publisher Handler. Te permite escribir scripts de Python puros con la extensión .py que serán interpretados por Apache. La segunda forma es el PSP Handler. PSP significa Python Server Pages. Te permite incrustar código Python directamente en código HTML, similar a PHP. Los archivos PSP tienen la extensión .psp.
3.1 El Publisher Handler
Para habilitar el Publisher Handler, debemos abrir nuestra configuración de vhost (estoy usando el vhost predeterminado en Debian con la raíz del documento /var/www; la configuración para este vhost se encuentra en /etc/apache2/sites-available/default) y agregar las líneas AddHandler mod_python .py, PythonHandler mod_python.publisher, y PythonDebug On:
vi /etc/apache2/sites-available/default| [...] |
Reinicia Apache después:
/etc/init.d/apache2 restartAhora creamos un pequeño script de prueba en Python (por ejemplo, /var/www/test.py) con código Python puro en él…
vi /var/www/test.py| def index(req): return "Test exitoso"; |
… y lo llamamos en un navegador (por ejemplo, http://192.168.0.100/test.py). Si todo va bien, debería mostrar Test exitoso en tu navegador.
3.2 El PSP Handler
Para habilitar el PSP Handler, debemos abrir nuestra configuración de vhost (estoy usando el vhost predeterminado en Debian con la raíz del documento /var/www; la configuración para este vhost se encuentra en /etc/apache2/sites-available/default) y agregar las líneas AddHandler mod_python .psp, PythonHandler mod_python.psp, y PythonDebug On:
vi /etc/apache2/sites-available/default| [...] |
Reinicia Apache después:
/etc/init.d/apache2 restartAhora creamos un pequeño script de prueba PSP (por ejemplo, /var/www/test.psp) con código HTML y Python en él…
vi /var/www/test.psp| |<% req.write("¡Hola!") %>
… y lo llamamos en un navegador (por ejemplo, http://192.168.0.100/test.psp). Si todo va bien, debería mostrar ¡Hola! en tu navegador.
4 Módulos de Python
Si necesitas más módulos de Python, puedes buscarlos así:
apt-cache search pythonElige los que necesites e instálalos de la siguiente manera:
apt-get install python-mysqldb python-xmlReinicia Apache después:
/etc/init.d/apache2 restart5 Enlaces
- mod_python: http://www.modpython.org
- Python: http://www.python.org
- Apache: http://httpd.apache.org
- Debian: http://www.debian.org
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.