Spyce en Windows con XAMPP y Mod_Python
Para poder instalar Spyce en Windows (Windows XP en mi caso), necesitamos los siguientes elementos:
- XAMPP 1.5 para Windows
- Python 2.4 para Windows
- mod_python 3.3 para Windows, para Apache 2.2 y Python 2.4
- Spyce 2.1
A continuación explicaré como conseguir todos estos elementos y usarlos juntos.
¿Qué es XAMPP?
XAMPP es una distribución de Apache muy fácil de usar, ya que contiene MySQL,
PHP y Perl. XAMPP es verdaderamente muy fácil de instalar - basta con descargar
el archivo, instalarlo y empezar.
La versión que necesitamos es la XAMPP 1.5.5 para Windows que podemos descargar directamente desde el servidor de SourceForge. Elegimos la versión que contiene el instalador ya que es la más fácil.
La ruta que seleccionamos es esta: c:\xampp y ahí se instala todo el contenido de la distribución que es este: Apache HTTPD 2.2.3, MySQL 5.0.27, PHP 5.2.0 + 4.4.4 + PEAR + Switch, MiniPerl 5.8.7, Openssl 0.9.8d, phpMyAdmin 2.9.1.1, XAMPP Control Panel 2.3, Webalizer 2.01-10, Mercury Mail v4.01a, FileZilla FTP Server 0.9.20, SQLite 2.8.15, ADODB 4.93, Zend Optimizer 3.0.2 y XAMPP Security.
¿Qué es Python?
Python® es un lenguaje de programación orientado a objetos que puede ser
usado para muchos desarrollos de software. Ofrece un soporte completo para
la integración con otros lenguajes y herramientas, viene con una extensa librería
estándar y puede ser aprendido en muy pocos días. Muchos programadores de Python
reportan una ganancia sustancial en su productividad y sienten que el lenguaje
les ayuda en el desarrollo de alta calidad, código mas manejable, etc.
La versión que vamos a instalar es la 2.4 desarrollada por ActiveState, una empresa que hace su propia distribución de Python, por lo que no contiene el código fuente, pero si un instalador que es muy fácil de usar. Podemos descargar directamente el archivo desde este enlace (http://downloads.activestate.com/ActivePython/windows/2.4/ActivePython-2.4.3.12-win32-x86.msi) e instalarlo en c:\python.
¿Qué es Mod_Python?
Mod_python es un módulo de Apache que
embebe al intérprete Python en
el servidor. Con mod_python puedes escribir aplicaciones web en Python que
se ejecutarán mucho más rápido que con el tradicional CGI y tendrás acceso
a características avanzadas como la habilidad de retener conexiones a bases
de datos y acceso a los detalles internos de Apache. Una descripción más detallada
de qué es mod_python está disponible en este artículo
de O’Reilly.
La versión que vamos a instalar es la 3.3.0b para Windows con Python 2.4 y Apache 2.2. Este es el enlace: http://www.sinacatri.gob.mx/apache/httpd/modpython/win/3.3.0b/mod_python-3.3.0b.win32-py2.4-Apache2.2.exe.
El instalador detecta desde el registro al intérprete Python, pero tenemos que indicarle dónde está el servidor Apache, por lo que le indicamos la siguiente ruta: c:\xampp\apache\ y a continuación localizamos el archivo c:\xampp\apache\conf\httpd.conf para editarlo y agregar la siguiente línea abajo de las otras que empiezan con LoadModule:
LoadModule python_module modules/mod_python.so
No es necesario reiniciar todavía el servidor Apache, porque nos falta un paso.
¿Qué es Spyce?
Spyce es
un lenguaje de servidores que soporta una simple y eficiente generación
de HTML basada en Python;
también se le conoce como Python Server Pages (PSP o Páginas
Servidas con Python). Para aquellos que les sea familiar JSP, PHP o ASP y les
guste Python, encontrarán que Spyce tiene un diseño que lo hace
flexible y extensible. También se puede usar como una utilidad de línea
de comandos para pre-procesar páginas estáticas o como proxy
para un servir Web.
La versión que usaremos es la 2.1.3 y la podemos obtener desde este enlace: http://easynews.dl.sourceforge.net/sourceforge/spyce/spyce-2.1-3.zip y lo instalamos en c:\spyce. Podemos agregar este directorio a la variable del sistema PATH para hacer uso del pequeño guión spyce.py, pero esto es opcional. Lo importante es agregar las siguientes líneas al archivo: c:\xampp\apache\conf\httpd.conf
<IfModule mod_python.c> AddHandler python-program .spy PythonHandler run_spyceModpy::spyceMain PythonPath "sys.path+[r'c:/spyce/']" #PythonOption SPYCE_CONFIG "/mydir/spyceconf.py" #PythonOptimize On </IfModule>
Ahora si podemos escribir nuestra primera página en Spyce y ver los resultados.
