preload
Nov 03

Hoy voy a continuar con las tareas de sysadmin y concretamente os voy a hablar de cómo instalar y usar trac a través del módulo mod_wsgi de Apache2 en lugar de mod_python.

Para instalar el módulo mod_wsgi de apache2 debes tener en tu server lo siguiente, en mi caso es una Debian5:

  • apache2
  • trac
  • python (obviamente), recomendado 2.5

Y dependiendo del tipo de base de datos, mysql o la correspondiente.

Seguiremos los siguientes pasos:

  • Instalación de WSGI
  • Configuración del Fichero de Apache (Virtual Host) para Trac
  • Configuración del Fichero WSGI para cada Trac
  • Reiniciar Apache
  • Probar

Yo he seguido el tutorial de TracModWSGI y os explico mi experiencia.

Instalación de WSGI

Simplemente escribe este comando en tu shell:

sudo apt-get install libapache2-mod-wsgi

Deja que apt-get haga su faena, presta atención a las posibles dependencias y tira adelante.

Configuración del Fichero de Apache (Virtual Host) para Trac

Asumo que tienes instalado y “funcionando” tu Trac. Y que tienes en tu directorio /etc/apache2/sites-available/ un fichero llamado trac.yourdomain.com el cual contiene algo parecido a:

<Directory “/path_to_your_trac_folder/public_html/”>
Options +Indexes FollowSymLinks MultiViews
AllowOverride AuthConfig Options FileInfo Limit
Order allow,deny
Allow from all
</Directory>
[...]
<Location “/onetrac”>
</Location>

Asumo también que tu Location “/onetrac” location está vacía pero porque no es importante su contenido. Aquí en teoria deberías tener las directrices de apache y la autentificación.

Mod_WSGI está basado en archivos python, renombrados a la extension .wsgi, pero archivos python.

Después de la etiqueta Directory y antes de la etiqueta de Location para la cual estamos aplicando el mod_wsgi inserta algo así:

WSGIScriptAlias /onetrac /path_to_your_trac_folder/onetrac/apache/mysite.wsgi

Con lo que delegarás la configuración que antes hacíamos directamente en el fichero de virtual hosts en un nuevo e “independiente” fichero .wsgi.

Añade una linea a tu Location “onetrac” en el archivo de Virtual Host:

<Location “/onetrac”>
WSGIApplicationGroup %{GLOBAL}
</Location>

Configuración del Fichero WSGI para cada Trac

Ahora ves a /path_to_your_trac_folder/onetrac , y haz lo siguiente:

mkdir apache
cd apache
touch mysite.wsgi

Ahora el path del fichero wsgi existe, vamos a editarlo para que tenga contenido así:

import os
os.environ['TRAC_ENV'] = ‘/path_to_your_trac_folder/onetrac/’

import trac.web.main
application = trac.web.main.dispatch_request

Reiniciar Apache

Simplemente:

sudo /etc/init.d/apache2 restart

O en lugar de reiniciar, puede ser que sirva con:

sudo /etc/init.d/apache2 reload

Test

Abre en tu navegador http://trac.yourdomain.com/onetrac y prueba.

Eso es todo.

Sientete libre de preguntar ;)

Related Posts:




Leave a Reply

*