Instalación de mod_python en Linux

Mod_python es un módulo de Apache Server que se encarga de integrar el lenguaje de programación Python en el servidor de Apache (más información aqui). La instalación de este módulo es realmente sencilla, como primer punto conseguimos las fuentes desde la página oficial del proyecto http://archive.apache.org/dist/httpd/modpython/, en mi caso descargue la versión 3.3.1 (mod_python-3.3.1.tgz).

PASOS PARA LA INSTALACION

Descomprime el tarball descargado:

$ tar -xzvf mod_python-3.3.1.tgz

Ingresa al directorio recien creado:

$ cd mod_python-3.3.1

a) Configurando la instalación:

$ ./configure --with-apxs=/usr/local/apache/bin/apxs

*Nota: En tu caso puede que sea diferente la ubicación del apxs de Apache, eso depende del path de instalación del Apache Server en tu sistema.

b) Compilación:

$ make

En mi caso en este paso la consola me devolvió el siguiente mensaje de error:

connobject.c: In function '_conn_read':
connobject.c:142:19: error: request for member 'next' in something not a structure or union
apxs:Error: Command failed with rc=65536
.
make[1]: *** [mod_python.so] Error 1
make[1]: Leaving directory `/usr/local/src/mod_python-3.3.1/src'
make: *** [do_dso] Error 2

La solución que encontré buscando en la red y que me funcionó fue esta:

Abre el archivo mod_python-3.3.1/src/connobject.c localiza la linea 142:

!(b == APR_BRIGADE_SENTINEL(b) ||

Modificala así:

!(b == APR_BRIGADE_SENTINEL(bb) ||

Guarda los cambios y vuelve a ejecutar el comando make.

Esta página me fué de gran ayuda:
http://forums.admon.org/linux-software/8162-mod_python-apache-[mod_python-so]-error-1-a.html

c) Instalación (como root)

# make install

Si la consola no te regresa ningún error procede a integrar el módulo configurando el archivo httpd.conf de Apache, abre dicho archivo y agrega lo siguiente:

LoadModule python_module      modules/mod_python.so

<Directory "/usr/local/apache/htdocs">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
    SetHandler mod_python
    PythonHandler mod_python.publisher
    PythonDebug On
</Directory>

d) Comprobando la instalación
Reinicia el servicio de Apache para aplicar las modificaciones en el archivo de configuración:

# /usr/local/apache/bin/apachectl restart

Crea un archivo con extension .py (por ejemplo test.py) con el siguiente contenido:

def index(req):
  return "Test, bienvenido Python!";

Guardalo en el directorio que configuraste para mod_python (para efectos de este manual /usr/local/apache/htdocs). Ahora abre una ventana de tu navegador web y escribe en la barra de dirección:

http://localhost/test.py

Si observas en la pantalla el mensaje de “Test, bienvenido Python!” significa que la instalación y configuración es correcta.

Enlace Corto:
http://wp.me/p13tD0-gr

Fuentes:
http://www.modpython.org/
http://www.howtoforge.com

Acerca de Moycas
Developer Web @moycc

2 Responses to Instalación de mod_python en Linux

  1. barbaradih dice:

    Pásate por mi blog, es posible que te interese😉

    • microbuffer dice:

      Hola Barbara gracias por visitar este blog, ya me di una vuelta por el tuyo y me resultó bastante interesante los temas que tratas. Espero verte seguido por este espacio. Saludos!

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: