Apache y su configuración

0 comentarios

En este post deseo plasmar lo que bajo mi punto de vista pueden ser unas plantillas básicas para la configuración del servidor web Apache. Hay que tener en cuenta que no voy a hablar sobre la configuración más óptima para Apache pero sí una forma de tener ficheros de configuración fáciles de mantener.

Como ya sabemos, la configuración de Apache está basada en varios ficheros, con lo cual podemos añadir configuración a cada componente del servidor de forma infividual. Esto permite tener la configuración en ficheros de texto corto para no volverse loco buscando lo que queremos cambiar. Nosotros vamos a intentar seguir este ejemplo, es decir, tener la configuración de los servicios ofrecidos por Apache en ficheros varios separados.

Bien, lo primero decir que para este ejemplo nuestro servidor Apache va a contener servicios de SVN, aplicaciones webs (tipo bugtracking, timetracking, ...) y páginas personales. El servidor web está instalado en un sistema UNIX, en el cual vamos a establecer el directorio raiz del servidor web en /var/www y sus ficheros de configuración se en el directorio /etc/apache.

Para tenerlo todo bien separado, vamos a definir varios sites (servidores virtuales) para el servidor web: uno para svn (svn.webserver.org), otro para las páginas personales (personal.webserver.org) y otro site para las aplicaciones web (app.webserver.org). Este ejemplo de división en sites puede que no sea el más adecuado para el ejemplo pero va a permitir definir perfectamente las plantillas de los diferentes ficheros de configuración.

La parte principal de la configuración de Apache está en el fichero /etc/apache/apache.conf, donde se suele colocar directivas de configuración internas del servidor. Para el ejemplo no vamos a necesitar tocar este fichero. Por otro lado, en la carpeta /etc/apache/sites-available es donde se introducen los ficheros de configuración de todos los sites definidos en el servidor web. Por lo tanto, vamos a colocar en este directorio un fichero de configuración por cada site o servidor virtual.

La plantilla para las páginas personales queda:

NameVirtualHost personal.webserver.org
<VirtualServer personal.webserver.org>
<Directory /var/www/personal1>
DocumentRoot /var/www

Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualServer>

Cada bloque delimitado por las directivas es una página personal, por lo que necesitamos añadir una por cada página a añadir en el servidor web. Cuando en el navegador escribas http://personal.webserver.org/personal1, el servidor web usará este fichero de configuración para enviarte la web a tu navegador. Para acceder al servicio de SVN, en el navegador hay que escribir http://svn.webserver.org/project1, por lo tanto, su fichero de configuración podría ser algo como:

NameVirtualHost svn.webserver.org
<VirtualServer svn.webserver.org>
<Location /project1>
DAV svn

SVNPath /var/lib/svn/project1

AuthType Basic
AuthName "SVN repository"
AuthUserFile /etc/apache2/svn.passwd
Require valid-user

Order deny,allow
deny from all
allow from 10.1.2
</Location>
</VirtualServer>

Como se puede ver, se ha añadido un bloque para la autenticación que en este caso se realiza mediante un fichero .passwd pero se pueden usar otros tipos de autenticación para accede al servicio de SVN. También se ha restringido el acceso al servicio solo para la red 10.1.2. Por cada repositorio SVN que queramos en el servidor web deberemos colocar en este fichero un nuevo bloque .

Por último vamos a ver cuál podría ser un fichero de configuración para las aplicaciones web. Básicamente, es igual que el fichero definido para las webs personales, solo que es posible que los ficheros de las aplicaciones web estén ubicados en un directorio diferente de /var/www, como puede ser /usr/share.
Read On

Gestores de tareas

0 comentarios

El otro día, debido a que va siendo necesario en mis trabajos tener una mínima planificación, me vi en el punto de tener que instalar un gestor de tareas a través de web.

Lo primero que piensa uno sobre los gestores de tareas es, "bueno, pruebo un par de ellos y el que mas me guste visualmente, ese me quedo". Claro, lo lógico es pensar que todos son para lo mismo, para gestionar tareas (¡qué ingenuo soy a veces!), pero como en muchos otros casos, la realidad es cruda, cada uno de ellos tiene sus ventajas. Hay diferentes formas de gestionar las tareas: normalmente es necesario con marcar un deadline, que no es más que indicar en una línea de tiempo el límite máximo en el que la tarea debe estar finalizada; en otras ocasiones es necesario tener definido perfectamente el comienzo y final de cada tarea, para tener un mayor control del tiempo de trabajo. En mi caso particular, no puedo saber de antemano el tiempo que voy a tener disponible para dedicar a cada tarea por lo tanto con un deadline tengo más que suficiente.

Llegados a este punto, me decidí a buscar las aplicaciones para gestión de tareas disponibles en la red. El primer requisito que deben cumplir es que, debe ser software libre, además de, ser accesible desde cualquier punto de la red (si estoy fuera de casa y necesito gestionar mis tareas, necesito acceso a la aplicación), por lo tanto debe ser accesible vía web. Teniendo en cuenta los dos requisitos, la lista de aplicaciones queda de la siguiente manera:
Caleio quedaba descartado de primera ya que, además de que el proyecto está cerrado, la web tampoco está disponible.

Vitalist, Voo2do y Ta-da list tienen buena pinta, pero hay que crearse una cuenta en su servidor y gestionar tus tareas en ese mismo servidor. Personalmente, no quiero tener información sobre mis tareas cotidianas en un servidor público (un poco paranoico por mi parte quizás, pero bueno).

SlimTimer puede usarse sin problemas como un gestor de tareas, pero no es su finalidad. Esta aplicación es de tipo Time Tracking, que sirve para controlar el tiempo real invertido en cada tarea que realices. Sin embargo, encontré esta aplicación con el nombre de gestor de tareas.

Dejamos lo mejor para el final, y en este caso es TaskFreak!. Este gestor de tareas tiene lo que ando buscando: gestión de tareas en diferentes proyectos, colaboración de diferentes usuarios en las mismas tareas, es un servicio web accesible desde cualquier sitio, y lo mejor de todo ¡gratuito!. Aparte de esto, permite definir el porcentaje completado de cada tarea, así como un deadline para cada tarea. Lo que se le puede achacar es que la interfaz podría ser un poco más intuitiva, y que tuviera disponible abstracción de la base de datos por si se quiere migrar de motor el algún momento. Realmente, no es de lo mejor pero para lo que he encontrado me quedo con TaskFreak!.
Read On